Ralink MT7601U 无线适配器的驱动器

Ralink MT7601U 无线适配器的驱动器

问题是,我真的不知道该怎么办。我刚刚安装了 Ubuntu。我现在没有互联网连接。我有一个 Ralink MT7601U 无线适配器。但它不起作用。

lsusb 检测到它(我猜):

Bus 001 Device 060: ID 148f:7601 Ralink Technology, Corp. MT7601U Wireless Adapter

但是那个 wifi 图标上什么都没有。而且“sudo lshw -C network”只显示以太网。另外在其中一篇文章中,我读到 Ubuntu 17.04(我有)默认包含它。如果是这样,为什么它不起作用?我应该做些什么吗?顺便说一句,安装 Ubuntu 时没有插入设备。有没有从 ubuntu-cd 安装驱动程序之类的东西??

请帮忙。我是 Ubuntu 新手。

rfkill list all并且sudo modprobe mt7601u什么也没有返回。但是第二个却要求输入密码。

编辑:因此,我已成功从源代码安装了驱动程序。现在dmesg | grep mt76开头又多了 3 行:

usbcore: registered new interface driver mt7601u
mt7601Usta: loading out-of-tree module taints kernel.
mt7601Usta: module verification failed: signature and/or required key missing - tainting kernel

iwconfig输出:

ra0             Ralink STA

我应该怎么办?

答案1

我终于找到了解决这个问题的办法。答案来自GitHub

  • 从 kernel.org 下载相应的内核源。例如:如果你4.4.0-104-generic下载的是 4.4 版本。你可以运行以下命令检查当前内核版本uname --kernel-release

  • 从存档中解压仅文件夹drivers/net/wireless/mediatek/mt7601u

  • 编辑 phy.c。找到函数mt7601u_init_cal并注释掉调用,mt7601u_mcu_calibrate(dev, MCU_CAL_RXIQ, 0);如下所示下面的代号 1

  • 查找函数mt7601u_phy_recalibrate_after_assoc并注释掉调用,mt7601u_mcu_calibrate(dev, MCU_CAL_DPD, dev->curr_temp);如下所示下面的代号 2

  • 构建模块:

    制作-C / lib / modules / $(uname -r)/ build M = $(pwd)模块

  • 删除设备

    sudo rmmod mt7601u sudo insmod ./mt7601u.ko

  • 插入设备

  • dmesg检查ip link中和接口没有出现错误,检查连接稳定性。

  • 使变革持久直到下一次内核升级:备份原始模块并用编译的模块替换。要找出原始模块的位置,请运行modinfo mt7601u(查看字符串文件名:/lib/模块/_KERNEL_VERSION_/内核/驱动程序/net/wireless/mediatek/mt7601u/mt7601u.ko)。

我已经在内核为 4.10 的 Ubuntu 16.04 上尝试过此方法。运行正常...

代码1:

// ret = mt7601u_mcu_calibrate(dev, MCU_CAL_RXIQ, 0); 
// if (ret) 
// return ret;
// ret = mt7601u_mcu_calibrate(dev, MCU_CAL_DPD, dev->dpd_temp); 
// if (ret) 
// return ret;

代码2:

void mt7601u_phy_recalibrate_after_assoc(struct mt7601u_dev *dev)
    { 
    // mt7601u_mcu_calibrate(dev, MCU_CAL_DPD, dev->curr_temp);
       mt7601u_rxdc_cal(dev); 
    }

希望能帮助到你...

相关内容