Qualcomm Atheros WiFI, Lenovo v310 и amp; Ubuntu 16.04

Недавно приобретенный Lenovo V310 с картой Qualcomm Atheros wifi. Остальные аппаратные компоненты работают нормально, проблема связана только с Wi-Fi. Проблемы: - при установке и прошивке для подключения к Wi-Fi я получаю только опцию «Qualcomm Atheros» вместо беспроводных сетей. - После того, как Ubuntu установлен и полностью обновлен, Wi-Fi не работает. В раскрывающемся списке Wi-Fi есть опция «Включить беспроводную связь». Я включаю его, но ничего не происходит.

Я пробовал следующие решения: это, это, это, это (это сделало wifi невидимым, как будто у меня не было Wi-Fi-карты) и это.

Ничто не работает.

edit:

по запросу, вот результат:

    03:00.0 Network controller [0280]: Qualcomm Atheros Device [168c:0042] (rev 30)
Subsystem: Lenovo Device [17aa:4035]
Kernel driver in use: ath10k_pci
Kernel modules: ath10k_pci


0: ideapad_wlan: Wireless LAN
    Soft blocked: no
    Hard blocked: yes
1: ideapad_bluetooth: Bluetooth
    Soft blocked: yes
    Hard blocked: yes
2: hci0: Bluetooth
    Soft blocked: no
    Hard blocked: no
3: phy0: Wireless LAN
    Soft blocked: no
    Hard blocked: no
1
задан 13 April 2017 в 15:24

1 ответ

Вам больше не нужно отключать ideapad_laptop, просто обновите ядро ​​Linux до последней версии (или любой версии после версии 4.1). Чтобы узнать, какая версия у вас есть

uname -r

Если у вас установлена ​​более старая версия, вы можете установить ее более новую с помощью диспетчера обновлений (например, View -> kernel kernel). Если в диспетчере обновлений нет v4.13 +, вы можете использовать этот метод:

https://wiki.ubuntu.com/Kernel/MainlineBuilds

Например. получить правильные файлы deb из https://wiki.ubuntu.com/Kernel/MainlineBuilds , установить и перезагрузить.

У меня была такая же проблема, и это исправило это для меня .

Если вам интересно, почему это произошло, это то, что я понял о проблеме:

Это проблема Lenovo V310. Ядро linux поставляется с модулем ядра ideapad-laptop.ko (вы можете найти его в /lib/modules/KERNEL-VERSION/kernel/drivers/platform/x86/ideapad-laptop.ko). Это общий модуль для ноутбуков ideapad, и большинство из них имеют аппаратный переключатель для Wi-Fi. Модуль попытается прочитать значение переключателя (вкл. / Выкл.), А если коммутатор отсутствует, он будет неправильно интерпретировать его как выключенный, поэтому он отключит Wi-Fi. Это происходит на V310. Тем не менее, есть список моделей ноутбуков в ideapad-laptop.ko, у которых нет этого аппаратного переключателя, поэтому модуль знает, как игнорировать значение, которое он считывает с коммутатора, и просто поддерживать Wi-Fi. Вы можете найти этот список здесь (проигнорировать x, я не могу разместить более двух ссылок)

https://github.com/torvalds/linux/blob/c65da8e22b1d1d8869af69d287fd699c31d2dd58/drivers/platform/x86/ ideapad-laptop.c # L960

Lenovo V310 изначально не был включен в список, но был добавлен в начале этого года в версии v4.13 + (вроде бы, если вы действительно заинтересованы в этом, проверьте коммиты https://github.com/torvalds/linux/blob/c65da8e22b1d1d8869af69d287fd699c31d2dd58/drivers/platform/x86/ideapad-laptop.c#L960 , 2 или посмотреть историю файлов).

. Таким образом, возможные решения состоят в том, чтобы обновить ядро ​​до версии с V310 (как описано выше), добавить ее самостоятельно в ideapad-laptop.c, скомпилировать модуль и заменить его в lib/modules или в качестве предыдущего ответа , просто отключите весь модуль ideapad-laptop (я думаю, вы пропустите некоторые функции здесь, но это, вероятно, не так уж и важно).

3
ответ дан 23 May 2018 в 00:35

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

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