目 录CONTENT

文章目录

硬改斐讯K2路由器32M Flash编译适配immortalwrt固件

成培培
2026-10-14 / 0 评论 / 0 点赞 / 2 阅读 / 0 字

从家里翻出来一台斐讯K2路由器,这台路由器大概是我八年前硬改过的,因为主板Flash焊盘同时支持了SOP8和SOP16封装,所以当时直接把原来SOP8封装的8M Flash芯片换一个SOP16封装的32M Flash,当时焊接水平比较差也没啥好工具好不容易才搞好的,不过最后当我刷入了官方的固件后,实际也只能识别出8M,因为对openwrt不太了解自己编译也没成功所以就不了了之了,如今再来折腾就很轻松能解决了。

源码修改

这里基于https://github.com/immortalwrt/immortalwrt.git的源码修改
clone代码切换到最新的Tag:v25.12.2
这里我是基于官方的phicomm_k2-v22.5复制一份出来修改,修改如下:

# target/linux/ramips/image/mt7620.mk 文件增加以下代码
define Device/phicomm_k2-v22.5-32m
  SOC := mt7620a
  IMAGE_SIZE := 32128k
  DEVICE_VENDOR := Phicomm
  DEVICE_MODEL := K2
  DEVICE_VARIANT := v22.5 32M
  DEVICE_PACKAGES := kmod-mt76x2
endef
TARGET_DEVICES += phicomm_k2-v22.5-32m

然后在target/linux/ramips/dts/文件夹下增加一个文件mt7620a_phicomm_k2-v22.5-32m.dts:

#include "mt7620a_phicomm_k2x.dtsi"

/ {
	compatible = "phicomm,k2-v22.5-32m", "ralink,mt7620a-soc";
	model = "Phicomm K2 v22.5 32M";
};

&partitions {
	partition@50000 {
		label = "permanent_config";
		reg = <0x50000 0x50000>;
		read-only;
	};

	partition@a0000 {
		compatible = "denx,uimage";
		label = "firmware";
		reg = <0xa0000 0x1f60000>;
	};
};

&ethernet {
	mediatek,portmap = "llllw";
};

&wmac {
	pinctrl-names = "default", "pa_gpio";
	pinctrl-0 = <&pa_pins>;
	pinctrl-1 = <&pa_gpio_pins>;
};

其实这个文件也是复制mt7620a_phicomm_k2-v22.5.dts后修改的,主要是修改partition@a0000里的reg

重新编译

改好后重新编译配置时就会看到新的选项了
https://www.chengpei.top/upload/k2-make.jpg
确保网络没有问题,编译还是很顺利的,经过4个半小时的编译,生成编译出固件:
https://www.chengpei.top/upload/k2-make-result.jpg

刷机

刷机比较简单,因为多年前我就已经给这个路由器刷入了Breedloader,所以长按rest键上电就会进入了, 直接上传固件包开刷,成功进入系统,我把Python3也装了,最后还剩下14M的空间,虽然只是一个百兆网口的路由器,但是无线性能还行,支持5G放在公司插网线作为一个AP用还是绰绰有余的
https://www.chengpei.top/upload/k2-immortalwrt.jpg

0

评论区