由于每个CPU架构的添加方式都不一样,所以我决定分N篇文章来写。首先就是Ramips架构,因为我有一台FW300R-V7的路由器(MT7620N的CPU),很不幸,不在Openwrt的官方支持列表里,网上的固件也不多,于是我决定自己写这路由器设备硬件信息描述

首先,就是我的试坑经历了,我找过配置差不多的路由器配置直接修改’compatible’和’model ‘,很遗憾,修改以后全部无法启动,不分配IP。后来确定是操作没做全。

本文仅供参考,我其实也没完全弄明白

好了,题外话不多说,我们切入主题

现在,我们需要找一个差不多能用(网口和LED都正常,就型号不同;当然如果你不介意LED的话,网口正常的机型也可以)的机型。直接复制他的硬件描述, 到一个新的dts文件里面。文件命名示例:mt7620n_fast_fw300r-v7.dts

然后修改 ‘compatible’和’model ‘ 比如

2020/6/27更新:请把旧文件中所有关于原机型的配置文件都改成新的

将此文件复制到./target/linux/ramips/dts目录中。

接下来,我们修改./target/linux/ramips/mt7620/base-files/etc/board.d下的02_network,这个文件是网络配置脚本 ,上一次直接修改好像就是这里没修改失败的

我们在ramips_setup_interfaces()这里直接复制黏贴你网口正常机器的配置就好了或者可以试试

[text] fast,fw300r-v7) ucidef_add_switch “switch0” \ “0:wan” “1:lan” “2:lan” “3:lan” “4:lan” “6t@eth0” ;; [/text]

然后,我们在修改同目录下的01_leds文件,如果不会配置的话就直接复制你那个LED正常但型号不同的LED配置即可,或者直接 ‘你设定的生产厂商,你设定的型号\‘即可 (至于具体如何配置LED,我现在我虽然成功了,但还没搞明白LED是怎么样设置的,等我完全搞明白在写文章发吧…现在发怕说错)

比如我就没有配置LED

接着,让这个新机型出现在选择列表中

我们编辑./target/linux/ramips/image目录下的mk文件,比如我是mt7620.mk

在里面添加

[text] define Device/fast_fw300r-v7 //机型文件去掉后缀和CPU MTK_SOC := mt7620n IMAGE_SIZE := 16064k DEVICE_VENDOR := FAST //生产厂商 DEVICE_MODEL := FW300R-V7 //具体型号 SUPPORTED_DEVICES += fw300r-v7 //具体型号 endef TARGET_DEVICES += fast_fw300r-v7 //机型文件去掉后缀和CPU [/text]

2020/6/27更新:mk文件应把MTK_SOC换成SOC,新版本的编译换MTK_SOC为SOC…我没注意到,然后编译失败了几十次看这个文件的时候才发现,太坑了

[text] define Device/fast_fw300r-v7 SOC := mt7620n IMAGE_SIZE := 16064k DEVICE_VENDOR := FAST DEVICE_MODEL := FW300R-V7 SUPPORTED_DEVICES += fw300r-v7 endef TARGET_DEVICES += fast_fw300r-v7 [/text]

记得修改成你的和把注释去掉。如果我的解释不清楚的话你就照着这个配置文件慢慢找规律

更改完毕后,删除编译目录下的tmp,然后输入make menuconfig,应该就能看到你的新添加的机型了,然后简单的选择下,编译,不出错的话就能在bin里面看到固件了。

如果有错误或解释不全面的欢迎提出


广告
广告正在加载中...
暂不开放评论,如对本文有任何疑问,请联系i#mr-wu.top(#替换为@)