Аннотация
Я пытаюсь запустить модуль 10GBASE-SR SFP +. Драйвер MA C не поддерживает I² C доступ к регистрам, поэтому я хочу использовать режим PHY-less. С другой стороны, режим «фиксированной связи» поддерживает только до 1 Гбит. Говорят, что режим «in-band-status» не работает с моими настройками. Таким образом у меня заканчиваются варианты. Я спрашиваю вас, есть ли другие варианты для запуска.
Об оборудовании
Моя компания создала точку доступа, содержащую NXP QorIQ T1023 Итак c. Это So C включает MA C, который подключен к клетке SFP +. Мы используем XFI для соединения между MA C и SFP +. Кроме того, модуль SFP + подключен к So C через I² C для доступа к его регистрам.
О программном обеспечении
Я использую OpenWRT с Linux 4.14. 137 ядро. В этом ядре есть исправления (в основном из проекта OpenWRT, некоторые из нас).
Подробная информация о проблеме
Для MA C я использую драйвер DPAA. Этот драйвер использует ядро phylib (он же PHY Abstraction Layer) для доступа к своему PHY. Однако phylib поддерживает только PHY, подключенные к MDIO, но не I² C подключенные устройства. Ядро также предоставляет phylink, который может обращаться к устройствам I² C и MDIO (согласно моему пониманию), но драйвер DPAA не поддерживает phylink. Поэтому модуль SFP + не будет работать «нормально» с драйвером DPAA.
Вместо этого я пытаюсь использовать режим PHY-less, добавляя ключевое слово «fixed-link» в мой файл DTS. Однако я могу настроить только до 1 Гбит, но мне нужно 10 Гбит.
Для файла DTS есть ключевое слово "in-band-status", но я не до конца понял, что он делает. Поддерживаемый NXP сказал мне, что это не будет работать с XFI.
Подводя итог, я рассмотрел следующие варианты:
- Операционная SFP + "нормально", регистрация доступа через I² C -> Не поддерживается драйвером MA C
- PHY-без операции с «фиксированной связью» -> не поддерживает 10G
- PHY-без операции с «in-band-» status "-> сказал, что это не вариант, но я не понимаю, почему
То, что я пробовал до сих пор
- Проверено XFI link: я читаю регистры MAC , и это говорит, что ссылка XFI установлена. Я не нашел эквивалентный регистр на стороне SFP +. Коммутатор Ethe rnet (это мой партнер по оптоволоконному каналу) сообщает, что канал подключен (светодиод горит).
- Чтение регистров SFP +: я действительно могу читать регистры модуля SFP +. Я попробовал это в командной строке U-boot, просто чтобы проверить соединение I² C.
- Взлом phylib: я пытался добавить режим 10G в режим «fixed-link» и имел ограниченный успех. Мой MA C теперь может принимать пакеты, но не отправлять. Я полагаю, что MA C все еще думает, что связь не работает. В настоящее время я работаю в этой области.
Мои вопросы
- Есть ли способ управления модулем SFP +, о котором я не знаю?
- В качестве дополнительного вопроса: есть ли хороший обзор доступных типов соединений MII? Я до сих пор не знаю, совпадают ли XFI и SFI или как связаны между собой XFI и XGMII и т. Д.
С уважением, Tanjeff