xtknight / mt7610u-linksys-ae6000-wifi-fixes

Trying to fix the MT7610U chipset driver by MediaTek so it's usable on modern Linux kernels and with nl80211/NetworkManager (and not completely breaking on old ones, maybe...)
187 stars 71 forks source link

mt7610u-linksys-ae6000-wifi-fixes

Trying to fix the MT7610U chipset driver by MediaTek so it's usable on modern Linux kernels and with nl80211/NetworkManager (and not completely breaking on old ones, maybe...).

Based on the driver from the HPRATH site (thank you!) http://hprath.com/2014/06/cisco-linksys-ae6000-ac580-media-tek-mt7610u-mt7630u-mt7650u-linux-x64-driver-patch/

Some of the issues, such as a WPA supplicant issue, are fixable by comparing MT7610U and MT7612U code from MediaTek.

Note

Features

Building

Building with DKMS

$ sudo apt-get install dkms  # if you've already installed dkms, skip this step.
$ sudo cp -R . /usr/src/mt7610u_sta-1.0
$ sudo dkms add mt7610u_sta/1.0
$ sudo dkms build mt7610u_sta/1.0
$ sudo dkms install mt7610u_sta/1.0

ARMv7 platform notes (e.g. Raspberry PI)

On the latest Raspbian stretch lite you will need to install the kernel headers to get DKMS to build

sudo apt-get install raspberrypi-kernel-headers

On ARMv7 platforms, there could be a problem with loading module. You'll see something like that in your dmesg output:

raspberrypi kernel: [   11.825048] <-- ERROR in Alloc Bulk buffer for RxContext!
raspberrypi kernel: [   11.825112] ERROR mt7610u_sta:
raspberrypi kernel: [   11.825119] Failed to allocate memory - TxRxRing

Modify file /boot/boot.cmd:

Find the string setenv bootargs and add coherent_pool=4M in the end of the line.

Then run the command and reboot the device:

mkimage -C none -A arm -T script -d /boot/boot.cmd /boot/boot.scr

In dmesg output you should see an increased value of DMA atomic allocations:

[    0.439464] DMA: preallocated 4096 KiB pool for atomic coherent allocations

Devices recognized by module

I have added all the devices from here, but it doesn't necessarily mean they will all work https://wikidevi.com/wiki/MediaTek_MT7610U

Major bugs fixed in original driver

If you have these issues, then this driver might fix the problem.

TODO

Other