[РЕШЕНО] WiFi RTL8188EE Hard Lock после перезагрузки

Дано:
OS: Gentoo. Ядро 4.4.26
Карта WiFi RTL8188EE.

Ядро собрано монолитное. Поддержка карты включена в ядро. Установлен пакет sys-kernel/linux-firmware.

Проблема в следующем. В случае с “холодной” загрузкой WiFi нормально запускается. Сеть есть, однако:
#dmesq

[ 0.697264] rtl8188ee 0000:01:00.0: enabling device (0000 -> 0003)
[ 0.705324] rtl8188ee: rtl8188ee: Power Save off (module option)
[ 0.705332] rtl8188ee: rtl8188ee: FW Power Save off (module option)
[ 0.705367] rtl8188ee: Using firmware rtlwifi/rtl8188efw.bin
[ 0.705564] rtl8188ee 0000:01:00.0: Direct firmware load for rtlwifi/rtl8188efw.bin failed with error -2
[ 0.705575] rtlwifi: Firmware rtlwifi/rtl8188efw.bin not available
[ 0.706783] ieee80211 phy0: Selected rate control algorithm ‘rtl_rc’
[ 0.707074] rtlwifi: rtlwifi: wireless switch is on

#ls /lib64/firmware/rtlwifi/rtl8188.****
/lib64/firmware/rtlwifi/rtl8188efw.bin
/lib64/firmware/rtlwifi/rtl8188eufw.bin

#ifconfig
enp2s0f2: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536

wlp1s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500

В том случае, если выполню:
#reboot

1). в dmesq записи о карте отсутствуют
2). /etc/init.d/wpa_supplicant restart пишет что rfkill: Hard Locked.
3). в списке доступных интерфейсов ifconfig запись о wlp1s0 отсутствует. Интерфейсы lo и enp2s0f2 в наличии.

#rfkill list
говорит что WiFi находится в состоянии Hard lock

#rfkill unblock wifi
ничего не дает

В том случае если выполню halt, а затем включу компьютер все работает отлично.

Может быть кто сталкивался. Куда копать, чтобы все нормально работало?

а модули и драйвера от производителя материнки или их аналоги поставлены ? было нечто похожее,но с переключением комбинированной карты ралинк (wifi/blutoth),когда эксперименты экспериментировал на прошлом асусе,не смог поднять вафлю без модуля asus_wireless и драйвера Asus Wireless Radio Control Driver,хотя ещё кучка других связанных с сетями и синезубом были в наличии и вроде как достаточными для работы…так понимаю что этот,или подобный ему для другого вендора, драйвер и его модуль управляют как раз аппаратными переключателями в самой карте отвечающими за включение и режимы работы карты/карт беспроводной связи, естественно для другого вендора или модели драйвера и модули будут с другими названиями… можно посмотреть на работающей на данной машине корректно системе что подгружено из модулей и отключая/включая по очереди посмотреть какой даёт нужный эффект и присутствует ли он в Вашей системе,ну и не всё же вроде как работает корректно в монолите может отдельным модулем? или это именно цель собрать монолит ?

Все не так просто в этом мире. А с Gentoo в особенности. Либо ты знаешь все нюансы и у тебя в отличии от других система летает, либо в отличии от остальных она у тебя ползает…

Итак. Как выяснилось. В том случае, если вы как и я собираете монолитное ядро и включаете в него драйвера устройств которые требуют firmware, то firmware так-же нужно включать в ядро. Делается это просто:

#make menuconfig
    Device Drivers
      Generic Device Options
        External Firmware blobs to build into the kernel binary - перечислить имена всех firmware что нужно включить с ядро. В моем случае параметр установлен в rtlwifi/rtl8188efw.bin.
        Firmware blobs root directory - Если fw ставите из портежа, то как в моем слечае указываете /lib/firmware/

После этого пересобираете ядро, грузитесь, и наступает счастье :slight_smile: