RT5350原廠SDK及AP移植步驟詳解

最近想搞一下rt5350,所以找了個原廠的SDK包進行了編譯,很快路由器就可以用了,把我的編譯操作步驟寫了下分享給更多的愛好者,供大家參靠,下一步準備移植攝像頭玩玩。有興趣的可以一起交流。

?

RT5350移植Toolchain工具的安裝

參見Ralink_SDK_User_Manual.pdf? 5

?

Step1install toolchain

拷貝解壓文件

#cp RT288x_SDK/toolchain/buildroot-gcc342.tar.bz2 ? /opt

#tar jxvf buildroot-gcc342.tar.bz2

新建文件

#mkdir /opt/buildroot-gdb?

#mkdir /opt/buildroot-gdb/bin

?

Step2:install LZMA Utility

解壓文件

#tar xvf? RT288x_SDK/toolchain/lzma-4.32.7.tar.gz

#cd RT288x_SDk/toolchian/lzma-4.32.7

#./configure

#make

#make install(auto install lzma to /usr/local.bin)

?

?

Step3:install mksquashfs utility

Rt5350使用內核Linux-2.6.21.x,配置如下

?

#cd RT288x_SDK/toolchain/mksquash_lzma-3.2

#make

#mak install (auto copy lzma_alone? mksquashfs_lzma-3.2 to /opt/buildroot-gdb/bin )

?

?

Bootloader參考手冊第6

?

內核文件系統編譯(參考第9章)

?

#cd RT288x_SDK/source

#make menuconfig

?

Step1:選擇板子型號

Step2:選擇flashSDRAM大小 (2/16

Step3:EXit-yes 保存退出

?

Step4:

#make dep

#make

?

編譯完成后,roomfs文件系統就會出現

?

移植AP,添加無線AP模式支持:

(參考第11-11.28小節)

?

Step1:拷貝文件 rt2860v2? rt2860v2_ap

?

\5350\RT5350_Driver\RT5350\2011_0825_RT5350_APSoC_WiFidriver_v2.6.0.0_DPB

?

#cp -rf rt2860v2? RT288x_SDK/linux-2.6.21.x/drivers/net/wireless

#cp -rf rt2860v2_ap? RT288x_SDK/linux-2.6.21.x/drivers/net/wireless

?

Step2:修改Makefile文件

#vi? RT288x_SDK/linux-2.6.21.x/drivers/net/wireless/Makefile

(此處已添加rt2860,無需修改可以查看)

?

Step3:修改Kconfig文件

#vi? RT288x_SDK/linux-2.6.21.x/ralink/Kconfig

?

將注釋的#去掉即可

source “drivers/net/wireless/rt2860_ap/Kconfig”

?

Step4:

#cp?

RT5350_AP_1T1R-DIV_ANT-2L_V13.BIN? RT5350_AP_1T1R-MAIN_ANT-2L_V13.BIN

?RT288x_SDK/source/vecdors/Ralink/RT5350

?

Step5:

?

$(ROMFSINST) -e CONFIG_RT2860_AP? /etc_ro/Wireless/iNIC/RT2860AP.dat

$(ROMFSINST) -e CONFIG_RT2860_AP ?

/etc_ro/Wireless/RT2860AP/RT5350_AP_1T1R-DIV_ANT-2L_V13.BIN

?

Step6:

?

v i /RT288x_SDK/source/user/rt2880_app/scripts/internet.sh

?

idRaxWdsxDown

(此處代碼已有,只查看即可)

If[“$CONFIG_RT2860_AP” != “”]; then

rmmod

rmmod

rmmod?

fi

?

?

?

?

#RTDEV_PCI support

(此處需添加一下代買)

If[“$CONFIG_RT2860_AP” != “”]; then

insmod

insmod

insmod?

fi

?

?

Step7:(按手冊操作)

EXit--yes

再次啟動的 y/n 根據需要配置,也可在Step8中查看和重新配置

?

Step8:只配置 Ralink Module

Exit -yes

?

Step9

?

#make dep

#make

?

到此rt350可以當路由使用了。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/383355.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/383355.shtml
英文地址,請注明出處:http://en.pswp.cn/news/383355.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

linux系統編程之進程概念(操作系統---管理,進程創建,進程狀態,進程優先級, 環境變量,程序地址空間,進程O(1)調度方法)

系統編程: 進程概念->進程控制->基礎IO->進程間通信->進程信號->多線程進程概念 馮諾依曼體系結構----現代計算機硬件體系結構 馮諾依曼體系結構----現代計算機硬件體系結構 計算機五大硬件單元:輸入設備:鍵盤輸出設備&#…

Make Menuconfig詳解 (配置內核選擇)

Make Menuconfig簡介 make menuconfig 圖形化的內核配置make mrproper -----刪除不必要的文件和目錄. #make config(基于文本的最為傳統的配置界面,不推薦使用) #make menuconfig(基于文本選單的配置界面,字符終端下…

Linux系統編程之進程控制(進程創建,fork函數,進程中止,進程等待,程序替換)

進程創建 fork()------復制,返回值,寫時復制 vfork()創建子進程—子進程與父進程共用同一塊虛擬地址空間, 為了防止調用棧混亂,因此阻塞父進程直到子進程調用exit()退出或者進行程序替換 vfork創建的子…

Linux內核配置系統淺析

隨著 Linux 操作系統的廣泛應用,特別是 Linux 在嵌入式領域的發展,越來越多的人開始投身到 Linux 內核級的開發中。面對日益龐大的 Linux 內核源代碼,開發者在完成自己的內核代碼后,都將面臨著同樣的問題,即如何將源代…

Linux系統編程下做一個簡易的shell

自主實現一個shell--------minshell shell:命令行解釋器-------解釋執行用戶的輸入(完成相對應的功能) 步驟 1. 獲取標準輸入中的字符串 2. 對字符串進行解析[ls -l -a][ls ] [-l ] [-a] 3. 創建子進程 4. 子進程中進行程序替換 5. 父進程…

C++起始(內聯函數,宏的優缺點,const關鍵字,auto關鍵字(C++11)基于范圍的for循環(C++11). 指針空值nullptr(C++11))

內聯函數 概念 以inline修飾的函數叫做內聯函數,編譯時C編譯器會在調用內聯函數的地方展開,沒有函數壓棧的開銷, 內聯函數提升程序運行的效率 函數前增加inline關鍵字將其改成內聯函數,在編譯期間編譯器會用函數體替換函數的調用…

linux內核中的匯編語言

在Linux內核代碼中,有一部分是用匯編語言編寫的。其大部分是關于中斷與異常處理的底層程序,還有就是與初始化有關的程序,以及一些核心代碼中調用的公用子程序。 用匯編語言編寫內核代碼中的部分代碼,大體上是出于如下幾個方面考慮…

數據結構課程設計---c語言實現通訊錄(動態擴容+文件存儲)

1 題目一 : 通訊錄 1.1問題描述 編寫一個通訊錄管理系統,以把所學數據結構知識應用到實際軟件開發中去。每條信息至包含 :姓名(NAME )街道(STREET)城市(CITY)郵編&#…

linux內核panic

1. Linux Kernel Panic的產生的原因 panic是英文中是驚慌的意思,Linux Kernel panic正如其名,linux kernel不知道如何走了,它會盡可能把它此時能獲取的全部信息都打印出來。 有兩種主要類型kernel panic,后面會對這兩類panic做詳細…

數據結構課程設計------c實現散列表(二次探測再哈希)電話簿(文件存儲)

題目二 :散列表的設計與實現 2.1問題描述 設計散列表實現電話號碼查找系統,使得平均查找長度不超過2基本要求 (1)設每個記錄有下列數據項:電話號碼、用戶名、地址; (2)從鍵盤輸入各…

科技論文----論搜索引擎現狀及發展趨勢

搜索引擎現狀及發展趨勢 【摘要】 隨著最近10年中國互聯網的快速發展菜互聯網已經徹底改變了人們的生活方式,而在互聯網的發展過程中。搜索引擎發揮了巨大的推動作用。本文對搜索引擎的發展歷史采用的技術,發展現狀出現的問題以及未來發展方向進行了綜述…

inittab文件格式

/etc/inittab文件是Linux系統第一個進程init的配置文件。其每個記錄占一行,每行最多512個字符。該文件的每個記錄的格式為: id:runlevel:action:process 其中,id是一個不超過4個字符的標識,用來唯一標識一條記錄。runlevel表明該條…

數據結構課程設計------掃雷游戲(升級版,可展開)

本程序由團隊中的一個人所寫,本人看懂并寫下此文章 題目:掃雷 3.1問題描述 掃雷游戲 [基本要求] (1)完成棋盤的初始化并在標準顯示器中顯示 (2)通過輸入行列值確定用戶輸入 (3)游…

C語言的編譯鏈接過程的介紹

發布時間: 2012-11-08 10:17 作者: 未知 來源: 51Testing軟件測試網采編 字體: 小 中 大 | 上一篇 下一篇 | 打印 | 我要投稿 | 推薦標簽: DotNet 軟件開發 | 感言十年 C語言的編譯鏈接過程要把我們編寫的一個c程序(源代碼&#x…

vs2013鏈接Mysql時出現 (由于找不到libmysql.dll,無法繼續執行代碼。重新安裝程序可能會解決此問題)

將MySQL安裝目錄下的lib文件夾中 的libmysql.dll文件拷貝到C:\Windows\System32目錄下即可

gcc 優化選項 -O1 -O2 -O3 -Os 優先級,-fomit-frame-pointer

少優化->多優化: O0 -->> O1 -->> O2 -->> O3 -O0表示沒有優化,-O1為缺省值,-O3優化級別最高 英文解析: -O -O1 Optimize. Optimizing compilation takes somewhat more time, an…

const 和 #define 區別總結

const有類型,可進行編譯器安全檢查,#define 無類型,不可進行類型檢查const 有作用域,而#define 不重視作用域,默認定義在指定作用域下有效的常量,那么#define 就不能用(可以用#undef結束宏定義生…

Eclipse : Unresolved inclusion

Eclipse 中新建C 或C 到項目時&#xff0c;頭文件報警&#xff0c;顯示“Unresolved inclusion:<stdio.h>” 雖然不影響項目到編譯和運行&#xff0c;確也無法查看頭文件&#xff0c;讓人感覺實在不爽。下面是在國外到網站上看到解決方案&#xff0c;自己整理了一下拿來分…

c++對const增強 和cosnt分配內存情況

const增強 c語言中const是偽常量&#xff0c;可以通過指針修改 c中const會放到符號表中 c語言中const默認是外部連接&#xff0c;c中const默認是內部鏈接 #include<iostream> using namespace std;const int m_a 10; //在全局區域里&#xff0c;受到保護&…

Linux下crontab命令的用法

任務調度的crond常駐命令 crond 是linux用來定期執行程序的命令。當安裝完成操作系統之后&#xff0c;默認便會啟動此任務調度命令。crond命令每分鍾會定期檢查是否有要執行的工作&#xff0c;如果有要執行的工作便會自動執行該工作。而linux任務調度的工作主要分為以下兩類&am…