解决 水星(Mercury)UD6S-V1.0-Linux20210616驱动在5.15内核报错

买了水星台式机wifi,从官网下载的驱动,在ubuntu-22.04(5.15内核)上编译报错,5.15删了一些文件和接口。 问了客服,客服说目前还不支持5.15,好吧,自己动手!

总共改了4个地方:

  1. 把5.10的include/net/ipx.h拷到驱动对应的文件夹,把include/uapi/linux/ipx.h拷到了驱动的include/linux目录下
  2. 修改系统kernel头文件/usr/src/linux-headers-5.15.0-43-generic/include/linux/netdevice.h,在enum gro_result里的GRO_CONSUMED前添加GRO_DROP
  3. 把驱动里使用set/get_fs的代码都用#if 0删除
  4. 修改os_dep/linux/ioctl_cfg80211.c:443行,给cfg80211_ch_switch_started_notify最后添加一个false参数

修改的驱动地址:https://github.com/gouhao/UD6S-V1.0-Linux20210616-gouhao
安装方法:

make -j8 && sudo make install
sudo modprobe 8821cu

你可能感兴趣的:(linux,ubuntu,水星,UD6S,Mercury)