MTK_Ralink_ApSoc_SDK编译总结

29 篇文章 2 订阅
10 篇文章 0 订阅

1.SDK没有带Wifi驱动,需要将外部Wifi驱动拷贝到drivers/net/wireless目录,并修改Ralink目录中的Kconfig文件,将rt2860v2_ap和rt2860v2_sta的Kconfig包含到文件中。

2.编译到goahead时,有一处错误,是goahead的Makefile(user/goahead/src)问题导致:

wps.o依赖于wps_inic.o,但是他们出现的顺序不对,修改如下:

# manfeel, wps.o depends on wps_inic.o
ifeq ("$(CONFIG_UNIQUE_WPS)", "y")
DEPEND_FILES += wps_unique.o
else
# manfeel, add this line
DEPEND_FILES += wps_inic.o
DEPEND_FILES += wps.o
endif
ifneq ("$(CONFIG_RT2860V2_STA)", "")
DEPEND_FILES += station.o
endif
ifneq ("$(CONFIG_RTDEV)", "")
DEPEND_FILES += inic.o
#ifneq ("$(CONFIG_UNIQUE_WPS)", "y")
#DEPEND_FILES += wps_inic.o
#endif

3.IP地址修改的问题:vendors/ralink目录中有各个SoC的配置,motd可以修改成自己的Banner,RT2860_default_novlan和RT2860_default_vlan中有包含IP在内的详细定义。

4.Wifi带机量的修改(感谢Lintel的指导):

(1)修改MAX_NUMBER_OF_MAC(rt2860v2/include/oid.h)

#define MAX_NUMBER_OF_MAC                64 // 原始值32

(2)Lintel指出:需要同时增大RX_RING_SIZE和TX_RING_SIZE,否则连接客户端一多就会掉包(rt2860v2/include/os/rt_linux_cmm.h中)

然而,受到Ralink Wifi驱动的先天限制,带机量改大之后看不到效果。还望有志于这方面研究的童鞋指点迷津。

5.最好不要启用多线程来编译(貌似MTK的编译系统对多线程编译支持的不好,容易导致image中的内容更新不同步)

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
1. 下载SDK 首先需要从OpenWrt官网下载SDK。选择与路由器硬件平台对应的SDK,例如:如果你的路由器是MT7620A芯片,则需要下载MT7620A SDK。 2. 解压SDK 将下载的SDK解压到任意目录下,例如:/opt/mt7620a_sdk。 3. 进入SDK目录 打开终端,进入SDK目录,例如:cd /opt/mt7620a_sdk。 4. 配置SDK 执行make menuconfig命令,进入SDK配置界面,进行以下配置: - Target System: 选择路由器的芯片类型,例如:MediaTek Ralink MIPS - Target Profile: 选择路由器的型号,例如:MT7620A based boards - Target Images: 选择编译软件包的目标平台,例如:ramips/mt7620a 5. 添加软件包源 执行以下命令,添加软件包源: echo "src/gz openwrt_custom http://openwrt.inkworm.com/chaos_calmer/15.05/mt7620a/packages/custom" >> /etc/opkg/customfeeds.conf opkg update 6. 安装编译工具 执行以下命令,安装编译工具: opkg install gcc make libpthread libstdcpp 7. 编写Makefile文件 在任意目录下创建一个文件夹,例如:/opt/my_package,并在该文件夹下创建一个名为Makefile的文件。在Makefile文件中编写软件包的编译规则。 以下是一个简单的Makefile文件示例: ``` include $(TOPDIR)/rules.mk PKG_NAME:=hello-world PKG_VERSION:=1.0 PKG_RELEASE:=1 include $(INCLUDE_DIR)/package.mk define Package/hello-world SECTION:=utils CATEGORY:=Utilities TITLE:=Hello World DEPENDS:=@TARGET_ramips_mt7620a endef define Package/hello-world/description This is a Hello World package. endef define Build/Compile $(MAKE) -C $(PKG_BUILD_DIR) $(TARGET_CONFIGURE_OPTS) endef define Package/hello-world/install $(INSTALL_DIR) $(1)/bin $(INSTALL_BIN) $(PKG_BUILD_DIR)/hello-world $(1)/bin/ endef $(eval $(call BuildPackage,hello-world)) ``` 8. 编译软件包 执行以下命令,编译软件包: make package/hello-world/compile V=s 编译完成后,在SDK目录下的bin目录中可以找到编译好的软件包。 9. 安装软件包 将编译好的软件包拷贝到路由器上,并执行以下命令安装: opkg install hello-world_1.0-1_ramips_24kec.ipk 安装完成后,在路由器上执行hello-world命令即可看到输出结果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值