Передовой опыт управления бортовым оборудованием

Эта проблема решена в IPv6 с помощью SLAAC (Автоконфигурация адресов без сохранения состояния ), но я предполагаю, что вы ищете решение для IPv4.

К сожалению, SLAAC недоступен для IPv4. Microsoft сделал что-то похожее (APIPA, Automatic Private IP Addressing ), но если маршрутизатор не настроен на эти адреса, это бесполезно.

В любом случае, ваша реальная проблема заключается в том, что вы хотите использовать сети, которые плохо настроены и/или имеют некоторые неисправности. Протокола на это нет.

0
07.08.2020, 14:43
1 ответ

Все в порядке, теперь монстры ушли. Это устройство шины PCI -. Устройства PCI — наши друзья.

$ lspci | grep SMBus
00:1f.3 SMBus: Intel Corporation Wildcat Point-LP SMBus Controller (rev 03)

Назначением адресов для устройств PCI управляет программное обеспечение. Устройству не нужно прослушивать фиксированные порты ввода-вывода или адреса памяти.

Поэтому она не будет включена случайно. Стандарт говорит, что IRQ устройства должен быть специально включен (, и существует стандартный способ сделать это ).

https://en.wikipedia.org/wiki/Peripheral_Component_Interconnect#Auto_configuration

Существует предостережение, которое рекомендует НЕ загружать драйвер для SMBus. Устройство SMBus может управляться прошивкой ACPI(AML). В этом случае ядро ​​не должно управлять им. Предполагается, что ACPI объявляет ресурсы устройства SMBus, чтобы ядро ​​могло этого избежать. Я не уверен, может ли ACPI ошибиться или нет. Я думаю, что раньше ядро ​​ошибалось, но теперь оно распознает это.

i801_smbus 0000:00:1f.3: PCI INT B -> GSI 21 (level, low) -> IRQ 21
ACPI: I/O resource 0000:00:1f.3 [0x400-0x41f] conflicts with ACPI region SMRG [0x400-0x40f]
ACPI: If an ACPI driver is available for this device, you should use it instead of the native driver
1
18.03.2021, 23:14

Теги

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