Поддержка PTP для сетевой карты RTL8125B-CG в Ubuntu 20.04

У меня есть сетевая карта RTL8125B-CG, которая, насколько я понимаю на странице продукта , имеет аппаратную поддержку PTP. Однако,sudo ethtool -Tне обнаруживает каких-либо возможностей аппаратной метки времени.

Я пробовал сr8169водитель и сr8125драйвер от Realtek (и этот с Github , и этот со страницы загрузки Realtek ), но безуспешно. В Makefile исходного кода, кажется, есть флаг, указывающий, что поддержка PTP не включена по умолчанию , но когда я включаю этот флаг, я не могу скомпилировать (получаю ошибку, представленную в этой проблеме ).

Кто-нибудь имеет опыт или знает, что я могу сделать, чтобы включить поддержку PTP?

Я использую Ubuntu 20.04 и5.11.0-36-genericядро.

1 ответ

Ответ см. в этой проблеме на Github: https://github.com/awesometic/realtek-r8125-dkms/issues/9 .

Короче говоря, проблема с компиляцией заключалась в том, что в самой новой версии драйвера (9.006.04) Realtek удалил переменную-член из , но не обновил PTP-файл соответствующим образом. Следовательно, все процедуры и не будут компилироваться. Есть два способа это исправить:

  1. Закомментируйте всеspin_lock_irqsaveиspin_lock_irqrestoreпроцедуры в файле PTP или
  2. Добавьте обратноspinlock_t lockчлен вstruct rtl8125_private.

Последнее, вероятно, более безопасно, поскольку мы не знаем, важны ли IRQ для работы драйвера. При этом я попробовал оба решения, и оба заставили драйвер скомпилировать и сообщить о возможностях PTP HW, поэтому я не знаю, какое из них лучше.

Тем не менее, я все еще думаю, что драйвер содержит ошибки, поскольку я все еще не могу использовать временную метку HW в подчиненном режиме, и у меня возникают проблемы с получением надежных результатов. Я часто сталкиваюсь с проблемой, чтоptp4lотlinuxptpвремя ожидания при попытке получить временную метку от драйвера. У меня два разных компьютера сr8125Сетевые адаптеры, и иногда это работает на одном компьютере и очень редко на другом. Я подозреваю, что функция PTP не была тщательно протестирована Realtek, хотя это всего лишь предположение с моей стороны.

Другие вопросы по тегам