Ошибка при сбросе ПЗУ BIOS сетевой карты Ethernet - RTL8111 / 8168b

С помощью этого руководства «Использование интерфейса PCI sysfs для создания дампа ПЗУ видео BIOS» Я попытался повторить шаги для сброса ПЗУ BIOS с сетевой карты.

Моя сетевая карта:

$ lspci
[snip]
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 01)

Так что я набрал это, чтобы быть уверенным, где находится моя сетевая карта:

$ find /sys/devices -name "rom"
/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/rom
/sys/devices/pci0000:00/0000:00:1c.3/0000:03:00.0/rom

Это второй результат. Теперь я должен выбросить его.

Итак, печатая то, что должно быть напечатано, я получаю сообщение об ошибке:

$ echo 1 | sudo tee /sys/devices/pci0000:00/0000:00:1c.3/0000:03:00.0/rom
1
$ sudo cat /sys/devices/pci0000:00/0000:00:1c.3/0000:03:00.0/rom > netbios.rom
cat: /sys/devices/pci0000:00/0000:00:1c.3/0000:03:00.0/rom: Input/output error

Видите? Ошибка ввода / вывода .. Используя ethtool, я также получаю сообщение об ошибке:

$ sudo ethtool -e eth0 > romdump.rom
Cannot get EEPROM data: Operation not supported

Вот дополнительная информация:

$ ethtool -i eth0
driver: r8169
version: 2.3LK-NAPI
firmware-version: 
bus-info: 0000:03:00.0
supports-statistics: yes
supports-test: no
supports-eeprom-access: no
supports-register-dump: yes

Так что, похоже, моя сетевая карта не позволяет мне делать дампы его BIOS ROM, используя доступ к eeprom? Но для меня это немного сбивает с толку - я имею в виду, что должна быть возможность сбросить любую аппаратную прошивку, верно?

2
задан 8 July 2018 в 07:37

1 ответ

Файл sysfs rom позволяет читать содержимое ПЗУ PCI, но, очевидно, устройство не предоставляет эту информацию. Он недоступен или не реализован устройством.

Что касается причины сбоя ethtool -e eth0, текущий драйвер r8169 (вплоть до версии 3.19-rc3 включительно) не реализует метод чтения из EEPROM. Если ваше сетевое устройство Realtek имеет EEPROM Atmel 93C46 или 93C56, то вы можете добавить эту функциональность r8169 с помощью этого патча (для Linux 3.11) ( тот же патч, перебазированный для 3.17, также работает для 3.19 [ 113]).

Для тех, чье устройство «заблокировано» (симптомы: мусорный MAC-адрес, такой как bb: 6f: ff: ff: ff: ff, идентификатор производителя / устройства, указанный как 10ec: 8129), вы можете попробовать выполнить инструкции, приведенные в это сообщение. Я пробовал это в прошлом, и время от времени я должен повторять это, когда питание полностью отключено от машины. К сожалению, инструкции не на 100% надежны, и каждый раз, чтобы заставить его работать, мне приходится пробовать гораздо больше уловок. На момент написания этой статьи RTL8169sb / 8110sb со вчерашнего дня не функционирует.

0
ответ дан 8 July 2018 в 07:37

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

Похожие вопросы: