[Решено] Бездисковая рабочая станция и tg3
Проблема в следующем.
Есть несколько десятков тонких клиентов с сетовй картой broadcom 57780 (модуль tg3)
Требуется собрать ядро с этой сетевой картой (не модулем).
Собрал, но дело в том не видит сетевую карту.
Если собираю модулем запускается только вот таким образом:
modprobe -r tg3
modprobe broadcom
modprobe tg3
При автоматической загрузке модуля вывод dmesg:
tg3 mdio bus: probed
tg3 0000:04:00.0: No PHY devices
tg3 0000:04:00.0: Problem fetching invariants of chip, aborting
После ручной перезагрузке модуля:
tg3 0000:04:00.0: eth0: Tigon3 [partno(BCM57780) rev 57780001] (PCI Express) MAC address XX:XX:XX:XX:XX:XX
tg3 0000:04:00.0: eth0: attached PHY driver [Broadcom BCM57780] (mii_bus:phy_addr=400:01)
tg3 0000:04:00.0: eth0: RXcsums[1] LinkChgREG[0] MIirq[0] ASF[0] TSOcap[1]
tg3 0000:04:00.0: eth0: dma_rwctrl[76180000] dma_mask[64-bit]
tg3 0000:04:00.0: eth0: Link is up at 100 Mbps, full duplex
tg3 0000:04:00.0: eth0: Flow control is on for TX and on for RX
Есть варианты?
- Для комментирования войдите или зарегистрируйтесь
Может, покурить зависимости
Может, покурить зависимости загруженного модуля?
Текстовый редактор vi имеет два режима работы: в первом он пищит, а во втором — всё портит.
Курю зависимости
При автоматической загрузке:
lsmod | grep tg3
tg3 106030 0
libphy 10998 1 tg3
После выполнения команд:
lsmod | grep tg3
tg3 106030 0
libphy 10998 2 tg3,broadcom
как видно модуль tg3 записит от libphy ну и во втором случае появляется модуль broadcom
также выяснилось что если к первоначальному варианту просто добавить modprobe broadcom
то карточка не определяется нужно обязательно сначало выгрузить tg3
Может каким либо образом заставить diskless научить работать с модулями сетевых карт?
Грузить модули вручную через
Грузить модули вручную через /etc/conf.d/modules пробовал?
а-ля
modules="broadcom tg3"
Нейтральность - высшее достижение сознания!
Пробовал (
Пробовал, хотя в инструкции ясно сказано:
Your network card driver. This needs to be built-in, not a module, because it is required for booting.
Решение найдено!
Нужно было всего-то в ядре выставить BROADCOM_PHY=y это и есть наш модуль broadcom
Всем спасибо!