[求助/问答] 给群輝加上 博通Broadcom BCM43xx 无线网卡驱动 (未成功) |
本帖最后由 j796160836 于 2017-6-16 12:23 编辑
这是一篇没成功的教程 相当折腾,也相当蛋疼,弄了好几个晚上不弄了 大概是太折腾,没人写 只是分享一下折腾的纪录和思路,如果有人成功了记得跟我说说 可以帮帮我 我找了很多文章跟教程还是做不出来 以下会拼凑一些我看到的教程跟我的步骤 --- 今天想加入的是 Broadcom BCM43224AG 802.11a/b/g/draft-n Wi-Fi Adapter 从鲁大师或AIDA64可以看到这个型号 Win7底下免驱 但在这里要驱动 思路有二个,一个是 b43 驱动一个是 wl 驱动 Broadcom(博通)无线网卡,总有三种类型的驱动
http://blog.csdn.net/beijing2008lm/article/details/18979607 细节差异就不贴了,大意就是内核自带的 b43 驱动比较厉害,但内核没有预设开启 wl 驱动会跟自带的驱动冲突所以安装时要关掉另外二者 查网卡型号 (在你的Nas底下做) $ lspci -n | grep 14e4 系统显示 0000:02:00.0 0280: 14e4:4353 (rev 01) 对照了表格 [td]
都是三者都可以用的意思 查系统版本 (在你的Nas底下做) $ uname -a 系统显示 Linux DiskStation 3.10.102 #15101 SMP Mon May 22 10:02:53 CST 2017 x86_64 GNU/Linux synology_broadwell_3617xs 这里有三个信息 1. Linux 内核版号是 3.10.102 2. 平台是 x86_64 (broadwell) 3. 型号是 DS3617xs 喔对了,我的是系统是 DSM 6.1 用的档案是 DSM_DS3617xs_15101.pat 环境准备 准备一台 Ubuntu 12.10 系統,如果版本新了一點沒關係 我是做台 Ubuntu 虚拟机,用 ssh 连到那台虚拟机,方便剪贴指令 避免蛋疼的权限不足,以下直接都用 root 操作,如果介意的话请自行加 sudo 安裝一些必要軟件: git, libc6-i386, ncurses, build-essential archivemount $ apt-get install git libc6-i386 build-essential libncurses5-dev archivemount 从这里 http://sourceforge.net/projects/dsgpl/files/ 下载 DSM 6.1 tool chain 文件解压至 /usr/local 下 路徑是 DSM 6.1 Tool Chains -> Intel x86 Linux 3.10.102 (Broadwell) 档名为 broadwell-gcc493_glibc220_linaro_x86_64-GPL.txz (在另一台主机上复制档案,如果知道的可以略过) $ scp broadwell-gcc493_glibc220_linaro_x86_64-GPL.txz ssh user@10.211.55.11:/home/user/ $ cp /home/user/broadwell-gcc493_glibc220_linaro_x86_64-GPL.txz /usr/local/ $ cd /usr/local/ $ tar -xvf broadwell-gcc493_glibc220_linaro_x86_64-GPL.txz 会解压很多文件在 /usr/local/x86_64-pc-linux-gnu/ wl 驱动 这里参考了 http://blog.csdn.net/tallercc/article/details/51985019 在 http://www.broadcom.com/support/802.11/linux_sta.php 下载最新的驱动 我点 Linux® STA 64-bit driver 档名为 hybrid-v35_64-nodebug-pcoem-6_30_223_271.tar.gz 解压下载好的驱动到 /usr/local/src/hybrid-wl 目录 $ mkdir -p /usr/local/src/hybrid-wl (在另一台主机上复制档案,如果知道的可以略过) $ scp hybrid-v35_64-nodebug-pcoem-6_30_223_271.tar.gz ssh user@10.211.55.11:/home/user/ $ cp /home/user/hybrid-v35_64-nodebug-pcoem-6_30_223_271.tar.gz /usr/local/src/hybrid-wl/ $ cd /usr/local/src/hybrid-wl $ tar -zxvf hybrid-v35_64-nodebug-pcoem-6_30_223_271.tar.gz 交互编译 $ cd /usr/local/src/hybrid-wl $ make ARCH=x86_64 CROSS_COMPILE=/usr/local/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu- 执行完毕会得到 wl.ko 编译时有 API=WEXT 或者 API=CFG80211 这二个参数,默认为第二种 如果不能加载就试试第一种 把它放在NAS的 /lib/modules 底下 (复制档案到NAS上,如果知道的可以略过) $ scp wl.ko admin@192.168.1.130:/volume1/data/ $ cp /volume1/data/ /lib/modules 然后在NAS上加载 $ insmod /lib/modules/wl.ko 系统会给这个错误 insmod: ERROR: could not insert module wl.ko: Invalid module format 然而用以下指令会得到更进一步的信息 $ dmesg [39219.935299] wl: version magic '3.5.0-17-generic SMP mod_unload modversions ' should be '3.10.102 SMP mod_unload ' 到这里就卡住了 这里有乱试了一下,用一些不正规的作法绕过去版本检查 http://blog.csdn.net/crazycoder8848/article/details/40950317 只会得到更多的错误 这个驱动没有 Kconfig 只有 Makefile (难道 Kconfig 是要自己写?) 没有 Kconfig 意思就是在 menuconfig 会没有选项可以选 所以我不知道要放在原代码的哪里 直接编译又有版本检查问题,求指导 b43 驱动 刚刚提到内核自带的 b43 驱动比较厉害,但内核没有预设开启 那就拿內核源代碼编译内核模组让他开启 这里参考了很多文章 http://www.gebi1.com/thread-63718-1-1.html http://www.xp933.com/tech/1328.html http://xpenology.com/wiki/en/building_xpenology http://www.bydavy.com/2012/01/co ... r-synology-devices/ http://xpenology.eu/viewtopic.php?t=59 https://forum.synology.com/enu/viewtopic.php?f=27&t=52065 http://www.gebi1.com/thread-64338-1-1.html http://www.21qa.net/questions/2145/2145?sort=votes&page=1 内核源代码有二处,andy 的跟 群晖官方的 我二个都试过 主要还是走模块加载的思路 游客,如果您要查看本帖隐藏内容请回复 群暉官方的内核源代码 我主要是看这个教程做的 https://hallard.me/how-to-instal ... ogy-ds1010-dsm-4-1/ 从这里 http://sourceforge.net/projects/dsgpl/files/ 下载 我的路径是 Synology NAS GPL Source -> 15047branch -> broadwell-source 档名是 linux-3.10.x.txz 把它解压到 /usr/local/x86_64-pc-linux-gnu/source/ $ mkdir -p /usr/local/x86_64-pc-linux-gnu/source/ (在另一台主机上复制档案,如果知道的可以略过) $ scp linux-3.10.x.txz ssh user@10.211.55.11:/home/user/ $ cp /home/user/linux-3.10.x.txz /usr/local/x86_64-pc-linux-gnu/source/ $ cd /usr/local/x86_64-pc-linux-gnu/source/ $ tar -xvf linux-3.10.x.txz 会解压很多文件在 /usr/local/x86_64-pc-linux-gnu/source/linux-3.10.x 进入选单选择 $ make ARCH=x86_64 CROSS_COMPILE=/usr/local/x86_64-pc-linux-gnu/bin/x86_64-linux-gnu- menuconfig 编译模组 $ make ARCH=x86_64 CROSS_COMPILE=/usr/local/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu- modules 主要的问题是,编译时会出错在一个莫名奇妙的地方
怎麼選? menuconfig 怎麼選擇 這裡有一些參考 游客,如果您要查看本帖隐藏内容请回复 这里很多地方都没有写,或者草草带过 有折腾的人一起讨论讨论 跟我一样不懂的人也帮忙顶一下,求大神出现 | ||||||||||||||||||||
按照我编译QNAP模块的经验来看,你可以尝试把所有编译失败的模块都去掉。反正你只是想编译一个wl.ko而已。比如说现在先把整个usb子系统全部去掉,再编译。
|
高端玩法,我贫乏的大脑完全想不出,给nas服务器安装无线网卡可以干什么用?不过看楼上这么折腾,突然有一种试一试的冲动
|
我给台式机用的usb3.0的5G无线网卡插在黑群晖上竟然是免驱的,可以识别连接无线网,比较蛋疼的是偶尔会休眠无法唤醒,名字叫睿因USB千兆无线网卡,不是打广告
|
感谢楼主分享,最近在给DS1821+添加E10M20-T1(AQC107网卡驱动)时,也折腾了好久,最后虽然驱动成功了,但方法是拣现成(pocopico大佬编译ds918+里的ko)还有winhex修改官方atlantic.ko里的PID VID,再删除数字签名部分)这个偏方。
通过DSM自身搭编译环境,Dsm 6.2 7.0下很多命令都删除了(apt等)困难重重, 虚拟机ubuntu 18.04下搭建群晖官方交叉编译环境,make成功得到ko文件,在insmod时也遇到版本号不匹配问题, 编译linux内核,我看到网友尝试完也未成功,目前看论坛里公开的方法都较早了,对DSM 6.2后面的新版本不适用,期待大佬位指导 |