Mediatek MT7630eはLinux 5.0.2および4.20では動作しません。

Mediatek MT7630eはLinux 5.0.2および4.20では動作しません。

Elementary OS JunoでMediatek M7630e WiFiを試してみましたが、うまくいきませんでした。正式にサポートされているLinux 4.20を搭載したFedora 29では、完璧ではない場合でも可能です。以前試したことがあります。出力はlshw -C network次のとおりです

*-network                 
       description: Ethernet interface
       product: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
       vendor: Realtek Semiconductor Co., Ltd.
       physical id: 0
       bus info: pci@0000:02:00.0
       logical name: enp2s0
       version: 10
       serial: 14:dd:a9:05:d1:dc
       size: 100Mbit/s
       capacity: 1Gbit/s
       width: 64 bits
       clock: 33MHz
       capabilities: bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=r8169 duplex=full firmware=rtl8168g-3_0.0.1 04/23/13 ip=192.168.1.132 latency=0 link=yes multicast=yes port=MII speed=100Mbit/s
       resources: irq:18 ioport:e000(size=256) memory:f7204000-f7204fff memory:f7200000-f7203fff
  *-network UNCLAIMED
       description: Network controller
       product: MT7630e 802.11bgn Wireless Network Adapter
       vendor: MEDIATEK Corp.
       physical id: 0
       bus info: pci@0000:03:00.0
       version: 00
       width: 32 bits
       clock: 33MHz
       capabilities: cap_list
       configuration: latency=0
       resources: memory:f7100000-f71fffff

そのうちの1つはlspci次のとおりです。

02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 10)
03:00.0 Network controller: MEDIATEK Corp. MT7630e 802.11bgn Wireless Network Adapter

以前は標準のLinuxカーネル4.15.0.* Generalを使用していましたが、Mediatek M7630e WiFiは機能しませんでした。だから私はこのドライバを使いました。https://github.com/neurobin/MT7630E

しかし、特定のバージョンのLinuxがデフォルトでインストールされているため、apt-get upgradeドライバがカーネルだけを破損して使用を中止しました。

ドライバの問題ページでhttps://github.com/neurobin/MT7630E/issues/90、Linux 4.20用のドライバが正式にリリースされることがわかっています。だから私はそれをダウンロードしました。私が今使っているLinux 5.0.2も。次のコマンドを使用してLinux 5.0.2をコンパイルしました。

cd ~/linux-5.0.2
cp config-4.15.0-46-generic .config # doesn't support MT7630e; the rest works fine, even Ethernet does
make menuconfig # and mark Network device support -> Wireless LAN -> Mediatek MT76x0E (PCIe) support as module (the tool suggested so)

make
sudo make modules_install
sudo make install

コンピュータを再起動し、lsmod | grep mt出力は次のようになります。

mt76x0e                20480  0
mt76x0_common          45056  1 mt76x0e
mt76x02_lib            61440  2 mt76x0e,mt76x0_common
mt76                   49152  3 mt76x0e,mt76x02_lib,mt76x0_common
mac80211              819200  4 mt76,mt76x0e,mt76x02_lib,mt76x0_common
cfg80211              675840  2 mt76x02_lib,mac80211

出力はdmesg | grep mt次のとおりです

[    0.119358] Performance Events: PEBS fmt2+, Broadwell events, 16-deep LBR, full-width counters, Intel PMU driver.
[   15.286109] mt76x0e 0000:03:00.0: ASIC revision: 76300002
[   15.286204] mt76x0e 0000:03:00.0: Direct firmware load for mediatek/mt7650e.bin failed with error -2
[   15.286816] mt76x0e: probe of 0000:03:00.0 failed with error -2

最後に、出力にip aWiFiは表示されません。

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether xx:xx:xx:05:d1:dc brd ff:ff:ff:ff:ff:ff
    inet xxx.xxx.x.xxx/xx brd xxx.xxx.x.xxx scope global dynamic noprefixroute enp2s0
       valid_lft 86082sec preferred_lft 86082sec
    inet6 xxxx:xxx:xxx:1616:c68:6e4d:dfb4:1218/64 scope global temporary dynamic 
       valid_lft 604483sec preferred_lft 85495sec
    inet6 xxxx:xxx:xxx:xxxx:8559:3aae:e9:5bc0/64 scope global mngtmpaddr noprefixroute 
       valid_lft forever preferred_lft forever
    inet6 xxxx::xxxx:xxxx:9b1a:99a2/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

WingPanelのネットワークアイコンをクリックすると、WiFiネットワーク検索は実行されません。だからまだ問題があるようです。

どのように解決すべきかわかりません。

答え1

mt76x0e以下をロードしてモジュール化する必要がありますmt76xx

sudo modprobe mt76x0e mt76xx

一時停止モード後にWi-Fiを自動的に再起動するには、/lib/systemd/system-sleep/wifi-wakeup次の内容でスクリプトを生成します。

#!/bin/sh

# Wake up the Wifi !

case $1/$2 in
    pre/*)
        modprobe -r mt76x0e mt76xx
        sleep 1
        ;;
    post/*)
        modprobe mt76x0e mt76xx
        ;;
esac

実行可能にする:

sudo chmod a+x /lib/systemd/system-sleep/wifi-wakeup

その後、コンピュータを再起動します。次のスリープ後、Wi-Fiが自動的に再起動します!

答え2

私はちょうどそれを見つけ、これが最近私に起こったように、他の人が狂っていることを防ぐのに役立つことを願っています。

質問の説明に従ってMT76x0eを有効にするには、現在の構成(/boot /にあります)でLinuxカーネル> = 4.20をコンパイルする必要があります。

その後、次のことを行う必要があります。

sudo mkdir /lib/firmware/mediatek/ sudo ln -s /lib/firmware/mt7650.bin /lib/firmware/mediatek/mt7650e.bin sudo rmmod mt76x0e sudo modprobe mt76x0e

応援してくれてありがとうルカ! :)

編集:@jawkerが言ったように、私も問題があります。 WiFiはうまく機能しますが、デバイスを一時停止すると動作が停止するため、再起動する必要があります(またはイーサネットケーブルを使用する必要があります)。

答え3

MT7630Eにも問題がありましたが、Linux 5.0.5を実行しているArchで動作するようにしました。ニューラルビンドライバを使用していません。まだ非常に不安定なのでネットワークを使うのにはいいのですが、速度テストをするとすぐにWiFiが出てオフになってから再びオンにならないと再び戻らず、正常に再起動できませんね。

dmesg | grep mt76電源を切ってから入れた後:

[    3.626362] mt76x0e 0000:03:00.0: Firmware Version: 1.0.07
[    4.591683] mt76x0e 0000:03:00.0: EEPROM ver:01 fae:05
[    4.591689] mt76x0e 0000:03:00.0: driver does not support HW RF ctrl
[    4.610301] mt76x0e 0000:03:00.0 wlp3s0f0: renamed from wlan0

iwconfigビットレートは72.2と1 Mb / sの間で交互に表示されます。

wlp3s0f0  IEEE 802.11  ESSID:"xxxxx"  
          Mode:Managed  Frequency:2.412 GHz  Access Point: xx:xx:xx:xx:xx:xx   
          Bit Rate=72.2 Mb/s   Tx-Power=20 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality=57/70  Signal level=-53 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:16   Missed beacon:0

この時点では、すべてが大丈夫に見え、インターネットサーフィンや他の難しい作業を行うことができますが、速度テストを試みると失敗します。

dmesg | grep mt76速度テストを試した後:

[    3.623044] mt76x0e 0000:03:00.0: ASIC revision: 76300002
[    3.626362] mt76x0e 0000:03:00.0: Firmware Version: 1.0.07
[    4.591683] mt76x0e 0000:03:00.0: EEPROM ver:01 fae:05
[    4.591689] mt76x0e 0000:03:00.0: driver does not support HW RF ctrl
[    4.610301] mt76x0e 0000:03:00.0 wlp3s0f0: renamed from wlan0
[  561.724974] mt76x0e 0000:03:00.0: TX DMA did not stop
[  579.407772] mt76x0e 0000:03:00.0: TX DMA did not stop
[  610.954214] mt76x0e 0000:03:00.0: TX DMA did not stop

dmesg | grep mt76正常に再起動した後:

[    3.707099] mt76x0e 0000:03:00.0: ASIC revision: 76300002
[    3.711256] mt76x0e 0000:03:00.0: Firmware Version: 1.0.07
[    3.737071] mt76x0e: probe of 0000:03:00.0 failed with error -5

この操作は終了して再起動しても役に立たないまで続きます。

答え4

1 か月間、複数のディストリビューションで Wi-Fi、シャットダウン、一時停止機能に問題が発生しました。ついに私は見つけたこの投稿私のWi-Fiの問題を解決する「Pilot 6」から:

より良い解決策は、DKMSを使用してドライバをインストールすることです。これにより、カーネルのアップグレード後に再インストールする必要がなくなります。この方法:

sudo apt-get install git dkms build-essential
git clone https://github.com/neurobin/MT7630E.git
cd MT7630E/
sudo make dkms

私はDebian 11を実行しているMediatek MT7630E 802.11bgn Wi-FiアダプタでAsus X750Lノートブックを使用しています。

関連情報