Файл I2c EEPROM отсутствует в пространстве пользователя - модуль SFP - PullRequest
0 голосов
/ 28 ноября 2018

У меня проблема с ядром linux и драйвером SFP / I2C.

Я использую ядро ​​linux для buildroot для встроенной платы.

Мне нужно прочитатьФайл eeprom устройства SFP i2c.

1.рабочий случай:

Когда модуль SFP вставляется в мою плату модуля разработки с самого начала (до загрузки ядра), то после завершения запуска я могу увидеть и прочитать файл eeprom по пути: / sys/ class / i2c-адаптер / i2c-1 / 1-0050 / eeprom

eeprom file exists

  • Ядро печатает при запуске результат сканирования устройства i2c:

enter image description here

2.не рабочий случай:

Если при запуске не вставлен модуль SFP и ядро ​​завершает загрузку, то, когда я вставляю модуль SFP, я вижу, что путь:

/ sys / class / i2c-адаптер / i2c-1 / 1-0050 / НЕ включает файл eeprom.

eeprom file missing

  • Часть дерева устройств кода sfp-eeprom:

enter image description here

Я предполагаю, что драйвер SFPотвечает за этот триггер, который должен произойти после вставки модуля SFP, и должен инициировать создание файла eeprom.

Хотите спросить вас, что мне не хватает?какой-нибудь обязательный код из драйвера sfp для запуска сканирования i2c или что-то еще?

Есть предложения?

Заранее спасибо.

1 Ответ

0 голосов
/ 29 ноября 2018

Обнаружен возможный обходной путь для этой проблемы.

для использования интерфейса ethtool -m .

со страницы руководства ethtool:

-m --dump-module-eeprom Извлекает и, если возможно, декодирует EEPROM из подключаемых модулей, например, SFP +, QSFP

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...