web-dev-qa-db-ja.com

Qualcomm Atheros WiFI、Lenovo v310およびUbuntu 16.04

Qualcomm Atheros wifiカード付きのLenovo V310を最近購入しました。残りのハードウェアコンポーネントは正常に機能しますが、問題はwifiのみです。問題:-インストール時に、どこにでもWi-Fiに接続するように求められると、ワイヤレスネットワークの代わりに「Qualcomm Atheros」というオプションしか表示されません。 -Ubuntuをインストールして完全に更新した後、wifiは機能しません。 WiFiドロップダウンには、「ワイヤレスを有効にする」というオプションがあります。有効にしますが、何も起こりません。まだWifiはありません。

私は次の解決策を試しました: thisthisthisthis wifiカードを持っていなかった)と this

何も機能していないようです。次に何を試すことができますか?

編集:

要求どおり、出力は次のとおりです。

    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
6
uxbal

Wi-Fiをブロックしているideapad_laptopモジュールを無効にする必要があります。

ターミナルで実行する

Sudo tee /etc/modprobe.d/blacklist-ideapad.conf <<< "blacklist ideapad_laptop"

そして再起動します。

9
Pilot6

ideapad_laptopを無効にする必要はありません。Linuxカーネルを最新バージョン(またはv4.13以降のバージョン)に更新するだけです。現在使用しているバージョンを確認するには

uname -r

古いバージョンを使用している場合は、Update Managerを使用して新しいバージョンをインストールできます(たとえば、[表示]-> [Linuxカーネル])。 Update Managerにv4.13 +がない場合、次の方法を使用できます。

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

例えば。 http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13/ から適切なdebファイルを取得し、インストールして再起動します。

私はまったく同じ問題を抱えていたので、修正されました。

なぜこれが起こったのか興味があるなら、これは私が問題について理解したことです:

これはLenovo V310の問題です。 Linuxカーネルには、ideapad-laptop.koカーネルモジュールが付属しています(/lib/modules/KERNEL-VERSION/kernel/drivers/platform/x86/ideapad-laptop.koにあります)。これはideapadラップトップ用の汎用モジュールであり、それらのほとんどにはwifi用のハードウェアスイッチがあります。モジュールはスイッチの値(オン/オフ)を読み取ろうとしますが、スイッチが存在しない場合、誤ってオフと解釈し、wifiを無効にします。これはV310で発生します。ただし、ideapad-laptop.koにはこのハードウェアスイッチを持たないラップトップモデルのリストがあるため、モジュールはスイッチから読み取った値を無視し、wifiをオンのままにすることを認識しています。あなたはここでこのリストを見つけることができます(xを無視して、2つ以上のリンクを投稿することはできません)

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

Lenovo V310は最初はリストにありませんでしたが、今年初めにバージョンv4.13 +に追加されました(これに本当に興味がある場合は、コミットを確認してください 12 またはファイル履歴を参照してください)。

したがって、可能な解決策は、カーネルをV310を含むバージョンに更新し(上で説明したとおり)、それをideapad-laptop.cに自分で追加し、モジュールをコンパイルしてlib/modulesのモジュールを置き換えるか、以前の回答が示唆したとおりです、単にideapad-laptopモジュール全体を無効にします(ここでいくつかの機能を見逃していると思いますが、おそらくそれほど大したことではないでしょう)。

4
dryhten