版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/fengfeng0328/article/details/83351637
Openwrt Add Target Profile 的方法:
1.添加硬件配置:/target/linux/ramips/dts/TEPLO.dts
2.修改相应Makefile文件:/target/linux/ramips/image/Makefile(镜像生成方式控制)
添加:
Image/Build/Profile/TEPLO=$(call BuildFirmware/Default16M/$(1),$(1),teplo,TEPLO)
ifeq ($(SUBTARGET),mt7628)
define Image/Build/Profile/Default
$(call Image/Build/Profile/TEPLO,$(1))
endef
endif
3.添加网络配置:/target/linux/ramips/base-file/etc/board.d/02_network
可以参考别人是如何改的:
wrtnode2r)
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
ucidef_add_switch "switch0" "1" "1"
ucidef_add_switch_vlan "switch0" "1" "1 2 3 4 6t"
ucidef_add_switch_vlan "switch0" "2" "0 6t"
;;
4.LED配置定义:/target/linux/ramips/base-file/etc/board.d/01_leds(有的板子这里没有)根据board_name设置led为在dts中定义的gpio
5.status_led设置:target/linux/ramips/base-files/etc/diag.sh
可以参考别人是如何修改的:
wrtnode2r)//根据board_name设置status_led为dts中定义的gpio
status_led="wrtnode:blue:indicator"
;;
对应dts:
gpio-leds {
compatible = "gpio-leds";
indicator {
label = "wrtnode:blue:indicator";
gpios = <&gpio1 12 1>;
};
};
6.修改/target/linux/ramips/base-files/lib/ramips.sh(对升级有影响)
添加:
*"TEPLO") //标志了是哪个版本cat tmp/sysinfo/model
name="telpo" //具体到板子的名字cat tmp/sysinfo/board_name
;;
7.修改/target/linux/ramips/base-files/lib/upgrade/platform.sh(升级镜像检查脚本)
添加:
telpo | \ //会根据上面板子的名字来检测镜像中magic是否匹配
8.增加Target Profile中的编译选项:/target/linux/ramips/mt7628/profiles/02-telpo.mk
define Profile/TEPLO
NAME:=TEPLO PROFILE #在make menuconfig中的名字
PACKAGES:=\
kmod-usb-core kmod-usb2 kmod-usb-ohci \
kmod-ledtrig-usbdev
endef
define Profile/TEPLO/Description
TEPLO base packages.
endef
$(eval $(call Profile,TEPLO))
9.最后注意删除./tmp文件重新make menuconfig