1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > rtl8188etv无线网卡驱动移植

rtl8188etv无线网卡驱动移植

时间:2019-12-05 16:17:16

相关推荐

rtl8188etv无线网卡驱动移植

<article class="baidu_pl">

<!--python安装手册开始-->

<!--python安装手册结束-->

<div id="article_content" class="article_content clearfix">

<!--一个博主专栏付费入口-->

<!--一个博主专栏付费入口结束-->

<link rel="stylesheet" href="/release/phoenix/template/css/ck_htmledit_views-833878f763.css">

<link rel="stylesheet" href="/release/phoenix/template/css/ck_htmledit_views-833878f763.css">

<div class="htmledit_views" id="content_views">

<h1><a name="t0"></a><a name="t0"></a><span style="letter-spacing:-.8px;"><span style="font-size:24px;">RTL8188ETV驱动移植</span></span></h1>

<p><span><span style="font-size:18px;"><strong>hi3520d,hi3518e平台驱动RTL8188ETV无线网卡</strong></span></span></p>

<p><span><br></span></p>

<p><span></span></p>

<p><span>在阅读本文档之前,需要熟悉基本的</span><span>hi3520d,hi3518e</span><span>环境搭建与烧写流程,本文档相关源码可以通过百度网盘下载。</span><span>/s/1o8JQFua</span></p>

<p><span>硬件图片&nbsp;</span></p>

<p><span><img src="https://img-/0602151203884?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaW1sc3E=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" width="500" alt=""><br></span></p>

<h2><a name="t1"></a><a name="t1"></a>源码目录结构</h2>

<p><span></span></p>

<p><span>把</span><span>rtl8188etv</span><span>无线网卡移植到</span><span>hi3520d</span><span>平台,源码编译依赖</span><span>linux</span><span>的</span><span>kernel</span><span>,最终整理出来的目录结构如下图</span><span>:</span></p>

<br><img src="https://img-/0602151358704" alt=""><br><p><span></span></p>

<p><span>linux-3.0.y</span><span>是</span><span>hi3520d</span><span>的内核源码目录</span></p>

<p><span>rtl8188</span><span>是网卡驱动源码目录</span></p>

<h2><a name="t2"></a><a name="t2"></a>内核配置</h2>

<p></p>

<pre><code class="language-java hljs"><ol class="hljs-ln"><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="1"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line">cd linux-<span class="hljs-number">3.0</span>.y</div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="2"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line">make menuconfig</div></div></li></ol></code><div class="hljs-button signin" data-title="登录后复制" οnclick="hljs.signin(event)"></div></pre><br>

调出我们熟悉的linux内核参数配置界面

<p></p>

<p><span><br></span></p>

<img src="https://img-/0602151610833" alt=""><br><h2><a name="t3"></a><a name="t3"></a>选择内核参数</h2>

<p><br></p>

<p><span><img src="https://img-/0602151714747" alt=""><br></span></p>

<p><span><img src="https://img-/0602151734262" alt=""><br></span></p>

<p><span><br></span></p>

<p><span></span></p>

<h2><a name="t4"></a><a name="t4"></a>内核编译</h2>

<p><span>保存之后退出,我们编译出内核</span><span>uImage</span><span>文件</span></p>

<p></p>

<pre><code class="language-java hljs">make uImage</code><div class="hljs-button signin" data-title="登录后复制" οnclick="hljs.signin(event)"></div></pre><br><span>之后就是漫长的编译过程</span>

<p></p>

<p>&nbsp;&nbsp;<img src="https://img-/0602152105404" alt=""></p>

<p></p>

<p><span>出现上图这样,恭喜你,支持无线网卡的内核编译成功</span><span>,</span><span>把</span><span>arch/arm/boot/uImage</span><span>这个文件烧写到主板上,有了这个内核之后,linux才能正确识别rtl8188的无线网卡</span></p>

<h2><a name="t5"></a></h2>

<h2><a name="t6"></a><a name="t6"></a>rtl8188编译参数配置<br></h2>

<p></p>

<pre><code class="language-css hljs"><ol class="hljs-ln"><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="1"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line"><span class="hljs-selector-tag">cd</span> ../<span class="hljs-selector-tag">rtl8188</span>/</div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="2"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line"><span class="hljs-selector-tag">vi</span> <span class="hljs-selector-tag">Makefile</span></div></div></li></ol></code><div class="hljs-button signin" data-title="登录后复制" οnclick="hljs.signin(event)"></div></pre><br><img src="https://img-/0602152403624" alt=""><br><p><span></span></p>

<p><span>继续往下,我们增加一个</span><span>hi3520d</span><span>平台的交叉编译器</span><span>,</span><span>如下图位置增加一项</span><span>”CONFIG_PLATFORM_HI3520d = y”</span></p>

<p><span><img src="https://img-/0602152549828" alt=""><br></span></p>

<p><span><br></span></p>

<p><span></span></p>

<p><span>继续往下,增加如下图内容</span></p>

<p><span><img src="https://img-/0602152710035" alt=""><br></span></p>

<p>增加的内容如下:</p>

<p><span></span></p>

<pre><code class="language-css hljs"><ol class="hljs-ln"><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="1"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line"><span class="hljs-selector-tag">ifeq</span> ($(<span class="hljs-selector-tag">CONFIG_PLATFORM_HI3520d</span>), <span class="hljs-selector-tag">y</span>)</div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="2"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line"><span class="hljs-selector-tag">EXTRA_CFLAGS</span> += <span class="hljs-selector-tag">-DCONFIG_LITTLE_ENDIAN</span></div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="3"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line"><span class="hljs-selector-tag">ARCH</span> := <span class="hljs-selector-tag">arm</span></div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="4"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line"><span class="hljs-selector-tag">CROSS_COMPILE</span> :=<span class="hljs-selector-tag">arm-hisiv100nptl-linux-</span></div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="5"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line"><span class="hljs-selector-tag">KVER</span> := 3<span class="hljs-selector-class">.0</span><span class="hljs-selector-class">.8</span></div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="6"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line"><span class="hljs-selector-tag">KSRC</span> := ../<span class="hljs-selector-tag">linux-3</span><span class="hljs-selector-class">.0</span><span class="hljs-selector-class">.y</span></div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="7"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line"><span class="hljs-selector-tag">endif</span></div></div></li></ol></code><div class="hljs-button signin" data-title="登录后复制" οnclick="hljs.signin(event)"></div></pre><br><p></p>

<p><span>保存退出</span></p>

<h2><a name="t7"></a><a name="t7"></a><span>编译rtl8188无线驱动</span></h2>

<p><span></span><br></p>

<p></p>

<pre><code class="language-css hljs"><span class="hljs-selector-tag">make</span> <span class="hljs-selector-tag">clean</span>;<span class="hljs-selector-tag">make</span></code><div class="hljs-button signin" data-title="登录后复制" οnclick="hljs.signin(event)"></div></pre><br>

等待几分钟时间的编译

<p></p>

<p><img src="https://img-/0602153345106" alt=""><br></p>

如出现上图,表示编译成功,<span>当前目录下的</span><span> 8188eu.ko</span><span>为最终驱动模块</span><span> ko,</span><span>把这个文件拷贝到下位机目标主板上.</span>

<p><span>上位机的操作到此结束,下面的操作就是在主板上进行了</span></p>

<p><span></span></p>

<h2><a name="t8"></a><a name="t8"></a><span>下位机上加<span>载驱动</span><img src="https://img-/0602153641068" alt=""></span></h2>

<p><span></span></p>

<p><span>如上图,把</span><span>8188eu.ko</span><span>文件拷贝到了下位机的</span><span>/app</span><span>目录下</span><span>,</span><span>确保硬件通过</span><span>usb</span><span>的方式连接到了主板上,执行</span></p>

<pre><code class="language-css hljs"><span class="hljs-selector-tag">insmod</span> 8188<span class="hljs-selector-tag">eu</span><span class="hljs-selector-class">.ko</span></code><div class="hljs-button signin" data-title="登录后复制" οnclick="hljs.signin(event)"></div></pre><br><img src="https://img-/0602153907726" alt=""><br><p><span></span></p>

<p><span>如上图,表示加载驱动成功</span></p>

<h2><a name="t9"></a><a name="t9"></a><span>启动无线网卡</span></h2>

<img src="https://img-/0602154053068" alt=""><br><p><span></span></p>

<p><span>如上图执行</span></p>

<p><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ifconfig -a&nbsp;</span></p>

<p><span>能查看到目前可用的无线网卡</span></p>

<p><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ifconfig wlan0 up</span></p>

<p><span>启动网卡</span></p>

<p><span>ifconfig </span><span>就能看到一个未分配</span><span>ip</span><span>地址的无线网卡了,后面我们开始让他连接到我们的无线路由器上</span><span>.</span></p>

<h2><a name="t10"></a><a name="t10"></a><span>wifi连接</span></h2>

<p><span>连接</span><span>wifi</span><span>需要一套无线配置软件,目前用的最多的就是</span><span>wpa_supplicant,</span><span>怎样编译移植这套无线配置软件,见后面的</span><span></span><span>无线工具移植编译说明</span><span>,</span><span>现在我们配置的时候,采用我已经编译好的</span><span>wpa_supplicant</span><span>,首先我们需要一个</span><span>wifi</span><span>配置文件,配置你的</span><span>wifi</span><span>的</span><span>ssid</span><span>和密码</span></p>

<p><span>我们把这个文件放到下位机的</span><span> /app/wpa.conf</span><span>目录,内容如下</span><span>:</span></p>

<pre><code class="language-java hljs"><ol class="hljs-ln"><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="1"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line">ctrl_interface=/tmp/wpa_supplicant</div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="2"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line">update_config=<span class="hljs-number">1</span></div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="3"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line">network={</div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="4"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line">ssid=<span class="hljs-string">"imlsq"</span></div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="5"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line">key_mgmt=WPA-PSK </div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="6"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line">proto=RSN WPA WPA2</div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="7"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line">pairwise=TKIP CCMP</div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="8"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line">group=TKIP CCMP</div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="9"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line">psk=<span class="hljs-string">"123456"</span></div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="10"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line">}</div></div></li></ol></code><div class="hljs-button signin" data-title="登录后复制" οnclick="hljs.signin(event)"></div></pre><br><p><img src="https://img-/0602154322165" alt=""></p>

<p></p>

<p><span>把</span><span>wpa_supplicant</span><span>,</span><span>wpa_cli , wpa_passphrase 3</span><span>个文件拷贝到</span><span>/bin</span><span>目录下</span><span>,</span><span>如下图</span><span>:</span></p>

<p><span><img src="https://img-/0602154429339" alt=""><br></span></p>

<p><span>关键的一步,连接</span><span>wifi</span><span>命令</span></p>

<p></p><pre><code class="language-java hljs">wpa_supplicant -B -Dwext -iwlan0 -c /app/wpa.conf &amp;</code><div class="hljs-button signin" data-title="登录后复制" οnclick="hljs.signin(event)"></div></pre><br><p><span>如果是获取动态</span><span>ip</span><span>地址</span></p>

<p></p><pre><code class="language-java hljs">udhcpc -i wlan0 &amp;</code><div class="hljs-button signin" data-title="登录后复制" οnclick="hljs.signin(event)"></div></pre><br><p><span>如果是设置静态</span><span>ip</span><span>地址</span></p>

<p></p><pre><code class="language-java hljs">ifconfig wlan0 <span class="hljs-number">192.168</span>.3.30</code><div class="hljs-button signin" data-title="登录后复制" οnclick="hljs.signin(event)"></div></pre><br><p><span>最终成功的效果如下图</span></p>

<img src="https://img-/0602154747338" alt=""><br><p></p>

<p><span><strong>恭喜你大功告成</strong></span></p>

<p><br></p>

<p></p>

<p><span>附件:</span></p>

<p><span>如何移植编译无线工具到hi3518e/hi3520d</span></p>

<p><span>wpa_supplicant_hostapd-0.8_rtw_r7475.0812.tar.gz </span>

<span>解压到上位机的任意目录下</span></p>

<p><span><span></span></span></p>

<pre><code class="language-java hljs"><ol class="hljs-ln"><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="1"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line">tar -xvf wpa_supplicant_hostapd-<span class="hljs-number">0.8</span>_rtw_r7475.0812.tar.gz</div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="2"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line"> </div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="3"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line">cd ./wpa_supplicant_hostapd-<span class="hljs-number">0.8</span>_rtw_r7475.0812/wpa_supplicant/</div></div></li></ol></code><div class="hljs-button signin" data-title="登录后复制" οnclick="hljs.signin(event)"></div></pre>

<p><br></p>

<p><span>修改交叉编译器</span></p>

<p><span>增加一行</span><span>&nbsp;</span></p>

<p><span>CC = arm-hisiv100nptl-linux-gcc</span></p>

<div><span><br></span></div>

<br><p><img src="https://img-/0602155016706" alt=""><br></p>

<p><br></p>

<p></p>

<p><span>然后执行</span></p>

<p></p>

<pre><code class="language-java hljs">make clean;make</code><div class="hljs-button signin" data-title="登录后复制" οnclick="hljs.signin(event)"></div></pre><br><br><p></p>

<img src="https://img-/0602155127684" alt=""><br><p><span>成功编译出</span><span> wpa_supplicant,wpa_passphrase,wpa_cli 3</span><span>个文件,把这</span><span>3</span><span>个文件拷贝到</span><span>hi3520d</span><span>/</span><span>hi3518e</span><span>就可以连接</span><span>wifi</span><span>了</span></p>

<p><span></span></p>

<p><span><br></span></p>

<p><span><br></span></p>

<p><span>最难最麻烦的事情交给我;把简单、快速、开心的事情交给你</span></p>

<p><span></span><br></p>

<p><br><span></span></p>

<p><span><span>如果你碰到问题,</span>联系我可以提供有偿服务(:. 如果你只想免费,&nbsp;<span>时间宝贵</span>,我的文档已经很详细了,自己解决问题,请不要加我qq,谢谢.</span></p>

<p><span>QQ:13012608<br></span><span>微信</span><span>/</span><span>手机号</span><span> : 18390966152<br></span><span>完整物联网解决方案攻城狮</span><span>,</span><span>提供</span><span>Zigbee/KNX/EIB</span><span>协议的各类传感器</span></p>

<br><br> </div>

<div class="more-toolbox">

<div class="left-toolbox">

<ul class="toolbox-list">

<li class="tool-item tool-active is-like "><a href="javascript:;"><svg class="icon" aria-hidden="true">

<use xlink:href="#csdnc-thumbsup"></use>

</svg><span class="name">点赞</span>

<span class="count">1</span>

</a></li>

<li class="tool-item tool-active is-collection "><a href="javascript:;" data-report-click="{&quot;mod&quot;:&quot;popu_824&quot;}"><svg class="icon" aria-hidden="true">

<use xlink:href="#icon-csdnc-Collection-G"></use>

</svg><span class="name">收藏</span></a></li>

<li class="tool-item tool-active is-share"><a href="javascript:;"><svg class="icon" aria-hidden="true">

<use xlink:href="#icon-csdnc-fenxiang"></use>

</svg>分享</a></li>

<!--打赏开始-->

<!--打赏结束-->

<li class="tool-item tool-more">

<a>

<svg t="1575545411852" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="/2000/svg" p-id="5717" xmlns:xlink="/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M179.176 499.222m-113.245 0a113.245 113.245 0 1 0 226.49 0 113.245 113.245 0 1 0-226.49 0Z" p-id="5718"></path><path d="M509.684 499.222m-113.245 0a113.245 113.245 0 1 0 226.49 0 113.245 113.245 0 1 0-226.49 0Z" p-id="5719"></path><path d="M846.175 499.222m-113.245 0a113.245 113.245 0 1 0 226.49 0 113.245 113.245 0 1 0-226.49 0Z" p-id="5720"></path></svg>

</a>

<ul class="more-box">

<li class="item"><a class="article-report">文章举报</a></li>

</ul>

</li>

</ul>

</div>

</div>

<div class="person-messagebox">

<div class="left-message"><a href="/imlsq">

<img src="/1/5/2/3_imlsq" class="avatar_pic" username="imlsq">

<img src="/static/user-reg-year/1x/6.png" class="user-years">

</a></div>

<div class="middle-message">

<div class="title"><span class="tit"><a href="/imlsq" data-report-click="{&quot;mod&quot;:&quot;popu_379&quot;}" target="_blank">imlsq</a></span>

</div>

<div class="text"><span>发布了11 篇原创文章</span> · <span>获赞 19</span> · <span>访问量 6万+</span></div>

</div>

<div class="right-message">

<a href="/im/main.html?userName=imlsq" target="_blank" class="btn btn-sm btn-red-hollow bt-button personal-letter">私信

</a>

<a class="btn btn-sm bt-button personal-watch" data-report-click="{&quot;mod&quot;:&quot;popu_379&quot;}">关注</a>

</div>

</div>

</div>

</article>

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。