Openwrt K2P编译32MB固件 以及支持USB 的方法,解决重启 亮 黄灯 红灯 卡死,顺便普及一下Ubuntu中,文本替换的知识,各种填坑操作

固件改32MB

偷懒的方法,直接到openwrt根目录下,直接执行如下三条命令

sed -i '/spi-max-frequency/a\\t\tbroken-flash-reset;' target/linux/ramips/dts/mt7621_phicomm_k2p.dts
sed -i 's/<0xa0000 0xf60000>/<0xa0000 0x1fb0000>/g' target/linux/ramips/dts/mt7621_phicomm_k2p.dts
sed -i 's/15744k/32448k/g' target/linux/ramips/image/mt7621.mk

三条命令解释:
第一条:这个很重要, 如果这条没有的话,那么软重启时(就是不拔电,用命令reboot重启,或者是系统里点重启按钮),你就要哭了,因为你的路由会变成黄灯一直卡在那里,别问我为什么,问我就想骂人了,我被这问题困扰了好久,找到好久才找到答案。
这条命令的实际效果是在 mt7621_phicomm_k2p.dts 文件的 spi-max-frequency 这一行下,增加了一行 tbroken-flash-reset;
第二条:是修改 mt7621_phicomm_k2p.dts ,将里面的 <0xa0000 0xf60000> 换成 <0xa0000 0x1fb0000>
第三条:是修改 mt7621.mk ,将里面的磁盘大小 15744k 修改成 32448k,(也就是31MB的样子)

可以参考下这篇文章,不过他没改broken-flash-reset,会导致软重启时亮黄灯卡死。
https://www.right.com.cn/forum/thread-3465887-1-1.html

增加USB支持
注意:实测此方法插入U盘不能自动挂载NTFS分区,需要手动mount,命令如下
需要把sda1换成你自己实际的

mount -t ntfs-3g /dev/sda1 /mnt/sda1

可以把这行代码加到 /etc/rc.local 里面,这样开机就能自动挂载了(但是不支持热插拔,不过一般也不会没事去抽插,你说是吧)

最好还是用ext4格式,免得这么麻烦

1. 添加USB相关支持
Kernel modules —> USB Support —> <*> kmod-usb-core.
Kernel modules —> USB Support —> <*> kmod-usb-ohci.
Kernel modules —> USB Support —> <*> kmod-usb-uhci.
Kernel modules —> USB Support —> <*> kmod-usb-storage. #安装usb存储设备驱动
Kernel modules —> USB Support —> <*> kmod-usb-storage-extras.
Kernel modules —> USB Support —> <*> kmod-usb2.0 ##usb2.0
Kernel modules —> USB Support —> <*> kmod-usb3.0 ##usb3.0
2.添加SCSI支持
Kernel modules —> Block Devices —> <*>kmod-scsi-core
3.添加文件系统支持
此处可根据自己的需求选择插件,
请注意绝对不要选择kmod-fs-ntfs,否则NTFS格式U盘是只读模式。要想正常,请选4中的插件。
Kernel modules —> Filesystems —> <*> kmod-fs-ext4 (移动硬盘EXT4格式选择)
Kernel modules —> Filesystems —> <*> kmod-fs-vfat(FAT16 / FAT32 格式 选择)
Kernel modules —> Filesystems —> <*> kmod-fuse
4.挂载NTFS
Utilities —> Filesystem —> <*> ntfs-3g
5.添加中文支持编码
Kernel modules —> Native Language Support —> <*> kmod-nls-cp437
Kernel modules —> Native Language Support —> <*> kmod-nls-iso8859-1
Kernel modules —> Native Language Support —> <*> kmod-nls-utf8
Utilities —> disc —> <*> fdisk……………………………… 磁盘分区工具
Utilities —> <*> usbutils…………………………….. USB devices listing utilities
6.添加USB挂载
Base system —> <*>block-mount
Utilities —> Filesystem —> <*> badblocks 自动挂载工具

6 评论

  1. 不需要修改其他的地方了吗?
    我是没改过内存的,直接加了个usb,USB相关支持都添加了进去,还是无法在/dev/sda*下找到U盘,编译了好多次,就是不支持USB。我看过7620的,需要修改dts,注释status=”disable”,或者改成”okay”。。。但k2p没有看到。希望得到博主的帮助。

留下评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注

5 + 4 =