mirror of
				https://github.com/Ysurac/openmptcprouter.git
				synced 2025-03-09 15:40:20 +00:00 
			
		
		
		
	Add p2w_r619ac support
This commit is contained in:
		
							parent
							
								
									2e63a4fc40
								
							
						
					
					
						commit
						f890a36727
					
				
					 10 changed files with 1808 additions and 0 deletions
				
			
		
							
								
								
									
										119
									
								
								root/package/firmware/ipq-wifi/Makefile
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										119
									
								
								root/package/firmware/ipq-wifi/Makefile
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,119 @@
 | 
			
		|||
include $(TOPDIR)/rules.mk
 | 
			
		||||
include $(INCLUDE_DIR)/version.mk
 | 
			
		||||
 | 
			
		||||
PKG_NAME:=ipq-wifi
 | 
			
		||||
PKG_RELEASE:=1
 | 
			
		||||
PKG_FLAGS:=nonshared
 | 
			
		||||
 | 
			
		||||
include $(INCLUDE_DIR)/package.mk
 | 
			
		||||
 | 
			
		||||
define Build/Prepare
 | 
			
		||||
	mkdir -p $(PKG_BUILD_DIR)
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define Build/Compile
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
# Use ath10k-bdencoder from https://github.com/qca/qca-swiss-army-knife.git
 | 
			
		||||
# to generate the board-* files here.
 | 
			
		||||
#
 | 
			
		||||
# This is intended to be used on an interim basis until device-specific
 | 
			
		||||
# board data for new devices is available through the upstream compilation
 | 
			
		||||
#
 | 
			
		||||
# Please send a mail with your device-specific board files upstream.
 | 
			
		||||
# You can find instructions and examples on the linux-wireless wiki:
 | 
			
		||||
# <https://wireless.wiki.kernel.org/en/users/drivers/ath10k/boardfiles>
 | 
			
		||||
 | 
			
		||||
ALLWIFIBOARDS:= \
 | 
			
		||||
	8dev_habanero-dvk \
 | 
			
		||||
	aruba_ap-303 \
 | 
			
		||||
	avm_fritzrepeater-1200 \
 | 
			
		||||
	buffalo_wtr-m2133hp \
 | 
			
		||||
	cellc_rtl30vw \
 | 
			
		||||
	dlink_dap2610 \
 | 
			
		||||
	engenius_eap2200 \
 | 
			
		||||
	engenius_emd1 \
 | 
			
		||||
	engenius_emr3500 \
 | 
			
		||||
	ezviz_cs-w3-wd1200g-eup \
 | 
			
		||||
	glinet_gl-s1300 \
 | 
			
		||||
	linksys_ea8300 \
 | 
			
		||||
	p2w_r619c \
 | 
			
		||||
	mobipromo_cm520-79f \
 | 
			
		||||
	qxwlan_e2600ac
 | 
			
		||||
 | 
			
		||||
ALLWIFIPACKAGES:=$(foreach BOARD,$(ALLWIFIBOARDS),ipq-wifi-$(BOARD))
 | 
			
		||||
 | 
			
		||||
define Package/ipq-wifi-default
 | 
			
		||||
  SUBMENU:=ath10k Board-Specific Overrides
 | 
			
		||||
  SECTION:=firmware
 | 
			
		||||
  CATEGORY:=Firmware
 | 
			
		||||
  DEPENDS:=@TARGET_ipq40xx
 | 
			
		||||
  TITLE:=Custom Board
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define ipq-wifi-install-one-to
 | 
			
		||||
  $(INSTALL_DIR)  $(2)/lib/firmware/ath10k/$(3)/
 | 
			
		||||
  $(INSTALL_DATA) $(1) $(2)/lib/firmware/ath10k/$(3)/board-2.bin
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define ipq-wifi-install-one
 | 
			
		||||
  $(if $(filter $(suffix $(1)),.QCA4019 .qca4019),\
 | 
			
		||||
    $(call ipq-wifi-install-one-to,$(1),$(2),QCA4019/hw1.0),\
 | 
			
		||||
  $(if $(filter $(suffix $(1)),.QCA9888 .qca9888),\
 | 
			
		||||
    $(call ipq-wifi-install-one-to,$(1),$(2),QCA9888/hw2.0),\
 | 
			
		||||
  $(if $(filter $(suffix $(1)),.QCA9984 .qca9984),\
 | 
			
		||||
    $(call ipq-wifi-install-one-to,$(1),$(2),QCA9984/hw1.0),\
 | 
			
		||||
    $(error Unrecognized board-file suffix '$(suffix $(1))' for '$(1)')\
 | 
			
		||||
  )))
 | 
			
		||||
 | 
			
		||||
endef
 | 
			
		||||
# Blank line required at end of above define due to foreach context
 | 
			
		||||
 | 
			
		||||
define generate-ipq-wifi-package
 | 
			
		||||
  define Package/ipq-wifi-$(1)
 | 
			
		||||
    $(call Package/ipq-wifi-default)
 | 
			
		||||
    TITLE:=board-2.bin Overrides for $(2)
 | 
			
		||||
    CONFLICTS:=$(PREV_BOARD)
 | 
			
		||||
  endef
 | 
			
		||||
 | 
			
		||||
  define Package/ipq-wifi-$(1)/description
 | 
			
		||||
The $(2) requires board-specific, reference ("cal") data
 | 
			
		||||
that is not yet present in the upstream wireless firmware distribution.
 | 
			
		||||
 | 
			
		||||
This package supplies board-2.bin file(s) that, in the interim,
 | 
			
		||||
overwrite those supplied by the ath10k-firmware-* packages.
 | 
			
		||||
 | 
			
		||||
This is package is only necessary for the $(2).
 | 
			
		||||
 | 
			
		||||
Do not install it for any other device!
 | 
			
		||||
  endef
 | 
			
		||||
 | 
			
		||||
  define Package/ipq-wifi-$(1)/install-overlay
 | 
			
		||||
    $$$$(foreach IPQ_WIFI_BOARD_FILE,$$$$(wildcard board-$(1).*),\
 | 
			
		||||
      $$$$(call ipq-wifi-install-one,$$$$(IPQ_WIFI_BOARD_FILE),$$(1)))
 | 
			
		||||
  endef
 | 
			
		||||
 | 
			
		||||
  PREV_BOARD+=ipq-wifi-$(1)
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
# Add board name to ALLWIFIBOARDS
 | 
			
		||||
# Place files in this directory as board-<devicename>.<qca4019|qca9888|qca9984>
 | 
			
		||||
# Add $(eval $(call generate-ipq-wifi-package,<devicename>,<display name>))
 | 
			
		||||
 | 
			
		||||
$(eval $(call generate-ipq-wifi-package,8dev_habanero-dvk,8devices Habanero DVK))
 | 
			
		||||
$(eval $(call generate-ipq-wifi-package,aruba_ap-303,Aruba AP-303))
 | 
			
		||||
$(eval $(call generate-ipq-wifi-package,avm_fritzrepeater-1200,AVM FRITZRepeater 1200))
 | 
			
		||||
$(eval $(call generate-ipq-wifi-package,buffalo_wtr-m2133hp,Buffalo WTR-M2133HP))
 | 
			
		||||
$(eval $(call generate-ipq-wifi-package,cellc_rtl30vw, Cell C RTL30VW))
 | 
			
		||||
$(eval $(call generate-ipq-wifi-package,dlink_dap2610,D-Link DAP-2610))
 | 
			
		||||
$(eval $(call generate-ipq-wifi-package,engenius_eap2200,EnGenius EAP2200))
 | 
			
		||||
$(eval $(call generate-ipq-wifi-package,engenius_emd1,EnGenius EMD1))
 | 
			
		||||
$(eval $(call generate-ipq-wifi-package,engenius_emr3500,EnGenius EMR3500))
 | 
			
		||||
$(eval $(call generate-ipq-wifi-package,ezviz_cs-w3-wd1200g-eup,EZVIZ CS-W3-WD1200G EUP))
 | 
			
		||||
$(eval $(call generate-ipq-wifi-package,glinet_gl-s1300,GL.iNet GL-S1300))
 | 
			
		||||
$(eval $(call generate-ipq-wifi-package,linksys_ea8300,Linksys EA8300))
 | 
			
		||||
$(eval $(call generate-ipq-wifi-package,mobipromo_cm520-79f,MobiPromo CM520-79F))
 | 
			
		||||
$(eval $(call generate-ipq-wifi-package,qxwlan_e2600ac,Qxwlan E2600AC))
 | 
			
		||||
$(eval $(call generate-ipq-wifi-package,p2w_r619ac,PW R619AC))
 | 
			
		||||
 | 
			
		||||
$(foreach PACKAGE,$(ALLWIFIPACKAGES),$(eval $(call BuildPackage,$(PACKAGE))))
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								root/package/firmware/ipq-wifi/board-p2w_r619ac.qca4019
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								root/package/firmware/ipq-wifi/board-p2w_r619ac.qca4019
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										173
									
								
								root/target/linux/ipq40xx/base-files/etc/board.d/02_network
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										173
									
								
								root/target/linux/ipq40xx/base-files/etc/board.d/02_network
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,173 @@
 | 
			
		|||
#!/bin/sh
 | 
			
		||||
#
 | 
			
		||||
# Copyright (c) 2015 The Linux Foundation. All rights reserved.
 | 
			
		||||
# Copyright (c) 2011-2015 OpenWrt.org
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
. /lib/functions/uci-defaults.sh
 | 
			
		||||
. /lib/functions/system.sh
 | 
			
		||||
 | 
			
		||||
ipq40xx_setup_interfaces()
 | 
			
		||||
{
 | 
			
		||||
	local board="$1"
 | 
			
		||||
 | 
			
		||||
	case "$board" in
 | 
			
		||||
	8dev,habanero-dvk|\
 | 
			
		||||
	8dev,jalapeno|\
 | 
			
		||||
	alfa-network,ap120c-ac|\
 | 
			
		||||
	engenius,emr3500|\
 | 
			
		||||
	engenius,ens620ext)
 | 
			
		||||
		ucidef_set_interfaces_lan_wan "eth0" "eth1"
 | 
			
		||||
		;;
 | 
			
		||||
	aruba,ap-303|\
 | 
			
		||||
	aruba,ap-365|\
 | 
			
		||||
	avm,fritzrepeater-1200|\
 | 
			
		||||
	dlink,dap-2610 |\
 | 
			
		||||
	engenius,eap1300|\
 | 
			
		||||
	engenius,emd1|\
 | 
			
		||||
	meraki,mr33|\
 | 
			
		||||
	netgear,ex6100v2|\
 | 
			
		||||
	netgear,ex6150v2|\
 | 
			
		||||
	zyxel,wre6606)
 | 
			
		||||
		ucidef_set_interface_lan "eth0"
 | 
			
		||||
		;;
 | 
			
		||||
	aruba,ap-303h)
 | 
			
		||||
		ucidef_set_interfaces_lan_wan "eth0" "eth1"
 | 
			
		||||
		ucidef_add_switch "switch0" \
 | 
			
		||||
			"0u@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "0u@eth1" "5:wan"
 | 
			
		||||
		;;
 | 
			
		||||
	asus,map-ac2200|\
 | 
			
		||||
	cilab,meshpoint-one|\
 | 
			
		||||
	openmesh,a42|\
 | 
			
		||||
	openmesh,a62)
 | 
			
		||||
		ucidef_set_interfaces_lan_wan "eth1" "eth0"
 | 
			
		||||
		;;
 | 
			
		||||
	asus,rt-ac58u|\
 | 
			
		||||
	p2w,r619ac-128m|\
 | 
			
		||||
	p2w,r619ac|\
 | 
			
		||||
	zyxel,nbg6617)
 | 
			
		||||
		ucidef_set_interfaces_lan_wan "eth0" "eth1"
 | 
			
		||||
		ucidef_add_switch "switch0" \
 | 
			
		||||
			"0u@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
 | 
			
		||||
		;;
 | 
			
		||||
	avm,fritzbox-4040|\
 | 
			
		||||
	linksys,ea6350v3|\
 | 
			
		||||
	linksys,ea8300)
 | 
			
		||||
		ucidef_set_interfaces_lan_wan "eth0" "eth1"
 | 
			
		||||
		ucidef_add_switch "switch0" \
 | 
			
		||||
			"0u@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
 | 
			
		||||
		;;
 | 
			
		||||
	avm,fritzbox-7530)
 | 
			
		||||
		ucidef_add_switch "switch0" \
 | 
			
		||||
			"0u@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
 | 
			
		||||
		;;
 | 
			
		||||
	avm,fritzrepeater-3000|\
 | 
			
		||||
	compex,wpj419|\
 | 
			
		||||
	compex,wpj428|\
 | 
			
		||||
	engenius,eap2200)
 | 
			
		||||
		ucidef_set_interface_lan "eth0 eth1"
 | 
			
		||||
		;;
 | 
			
		||||
	buffalo,wtr-m2133hp)
 | 
			
		||||
		ucidef_set_interfaces_lan_wan "eth0" "eth1"
 | 
			
		||||
		ucidef_add_switch "switch0" \
 | 
			
		||||
			"0u@eth0" "2:lan:3" "3:lan:2" "4:lan:1"
 | 
			
		||||
		;;
 | 
			
		||||
	cellc,rtl30vw)
 | 
			
		||||
		ucidef_set_interface_lan "eth0"
 | 
			
		||||
		ucidef_add_switch "switch0" \
 | 
			
		||||
			"0u@eth0" "3:lan" "4:lan"
 | 
			
		||||
		;;
 | 
			
		||||
	ezviz,cs-w3-wd1200g-eup)
 | 
			
		||||
		ucidef_set_interfaces_lan_wan "eth0" "eth1"
 | 
			
		||||
		ucidef_add_switch "switch0" \
 | 
			
		||||
			"0u@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "0u@eth1" "5:wan"
 | 
			
		||||
		;;
 | 
			
		||||
	glinet,gl-b1300 |\
 | 
			
		||||
	glinet,gl-s1300)
 | 
			
		||||
		ucidef_set_interfaces_lan_wan "eth0" "eth1"
 | 
			
		||||
		ucidef_add_switch "switch0" \
 | 
			
		||||
			"0u@eth0" "3:lan" "4:lan"
 | 
			
		||||
		;;
 | 
			
		||||
	mobipromo,cm520-79f)
 | 
			
		||||
		ucidef_add_switch "switch0" \
 | 
			
		||||
			"0u@eth0" "3:lan:2" "4:lan:1"
 | 
			
		||||
		ucidef_set_interface_wan "eth1"
 | 
			
		||||
		;;
 | 
			
		||||
	qxwlan,e2600ac-c1 |\
 | 
			
		||||
	qxwlan,e2600ac-c2)
 | 
			
		||||
		ucidef_set_interfaces_lan_wan "eth0" "eth1"
 | 
			
		||||
		ucidef_add_switch "switch0" \
 | 
			
		||||
			"0u@eth0" "3:lan" "4:lan" "0u@eth1" "5:wan"
 | 
			
		||||
		;;
 | 
			
		||||
	unielec,u4019-32m)
 | 
			
		||||
		ucidef_set_interfaces_lan_wan "eth0" "eth1"
 | 
			
		||||
		ucidef_add_switch "switch0" \
 | 
			
		||||
			"0u@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "0u@eth1" "5:wan"
 | 
			
		||||
		;;
 | 
			
		||||
	*)
 | 
			
		||||
		echo "Unsupported hardware. Network interfaces not initialized"
 | 
			
		||||
		;;
 | 
			
		||||
	esac
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
ipq40xx_setup_macs()
 | 
			
		||||
{
 | 
			
		||||
	local board="$1"
 | 
			
		||||
	local lan_mac=""
 | 
			
		||||
	local wan_mac=""
 | 
			
		||||
	local label_mac=""
 | 
			
		||||
 | 
			
		||||
	case "$board" in
 | 
			
		||||
	8dev,habanero-dvk)
 | 
			
		||||
		label_mac=$(mtd_get_mac_binary "ART" 0x1006)
 | 
			
		||||
		;;
 | 
			
		||||
	asus,rt-ac58u|\
 | 
			
		||||
	p2w,r619ac-128m|\
 | 
			
		||||
	p2w,r619ac)
 | 
			
		||||
		CI_UBIPART=UBI_DEV
 | 
			
		||||
		wan_mac=$(mtd_get_mac_binary_ubi Factory 0x1006)
 | 
			
		||||
		lan_mac=$(mtd_get_mac_binary_ubi Factory 0x5006)
 | 
			
		||||
		label_mac=$wan_mac
 | 
			
		||||
		;;
 | 
			
		||||
	cilab,meshpoint-one)
 | 
			
		||||
		label_mac=$(mtd_get_mac_binary "ART" 0x1006)
 | 
			
		||||
		;;
 | 
			
		||||
	dlink,dap-2610)
 | 
			
		||||
		lan_mac=$(mtd_get_mac_ascii bdcfg lanmac)
 | 
			
		||||
		label_mac=$lan_mac
 | 
			
		||||
		;;
 | 
			
		||||
	engenius,eap2200|\
 | 
			
		||||
	engenius,emd1)
 | 
			
		||||
		lan_mac=$(mtd_get_mac_ascii 0:APPSBLENV ethaddr)
 | 
			
		||||
		label_mac=$lan_mac
 | 
			
		||||
		;;
 | 
			
		||||
	engenius,emr3500)
 | 
			
		||||
		wan_mac=$(mtd_get_mac_ascii 0:APPSBLENV wanaddr)
 | 
			
		||||
		lan_mac=$(mtd_get_mac_ascii 0:APPSBLENV ethaddr)
 | 
			
		||||
		label_mac=$wan_mac
 | 
			
		||||
		;;
 | 
			
		||||
	engenius,ens620ext)
 | 
			
		||||
		wan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
 | 
			
		||||
		lan_mac=$(macaddr_add "$wan_mac" 1)
 | 
			
		||||
		;;
 | 
			
		||||
	ezviz,cs-w3-wd1200g-eup)
 | 
			
		||||
		label_mac=$(mtd_get_mac_binary "ART" 0x6)
 | 
			
		||||
		;;
 | 
			
		||||
	linksys,ea6350v3)
 | 
			
		||||
		wan_mac=$(mtd_get_mac_ascii devinfo hw_mac_addr)
 | 
			
		||||
		lan_mac=$(macaddr_add "$wan_mac" 1)
 | 
			
		||||
		;;
 | 
			
		||||
	esac
 | 
			
		||||
 | 
			
		||||
	[ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
 | 
			
		||||
	[ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
 | 
			
		||||
	[ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
board_config_update
 | 
			
		||||
board=$(board_name)
 | 
			
		||||
ipq40xx_setup_interfaces $board
 | 
			
		||||
ipq40xx_setup_macs $board
 | 
			
		||||
board_config_flush
 | 
			
		||||
 | 
			
		||||
exit 0
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,242 @@
 | 
			
		|||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
[ -e /lib/firmware/$FIRMWARE ] && exit 0
 | 
			
		||||
 | 
			
		||||
. /lib/functions/caldata.sh
 | 
			
		||||
 | 
			
		||||
board=$(board_name)
 | 
			
		||||
 | 
			
		||||
case "$FIRMWARE" in
 | 
			
		||||
"ath10k/cal-pci-0000:01:00.0.bin")
 | 
			
		||||
	case "$board" in
 | 
			
		||||
	meraki,mr33)
 | 
			
		||||
		caldata_extract_ubi "ART" 0x9000 0x844
 | 
			
		||||
		caldata_valid "4408" || caldata_extract "ART" 0x9000 0x844
 | 
			
		||||
		ath10k_patch_mac $(macaddr_add $(get_mac_binary "/sys/bus/i2c/devices/0-0050/eeprom" 0x66) +1)
 | 
			
		||||
		;;
 | 
			
		||||
	esac
 | 
			
		||||
	;;
 | 
			
		||||
"ath10k/pre-cal-pci-0000:01:00.0.bin")
 | 
			
		||||
	case "$board" in
 | 
			
		||||
	asus,map-ac2200)
 | 
			
		||||
		caldata_extract_ubi "Factory" 0x9000 0x2f20
 | 
			
		||||
		ln -sf /lib/firmware/ath10k/pre-cal-pci-0000\:00\:00.0.bin \
 | 
			
		||||
			/lib/firmware/ath10k/QCA9888/hw2.0/board.bin
 | 
			
		||||
		;;
 | 
			
		||||
	avm,fritzrepeater-3000)
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x3D000 -e 0x212 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader0") || \
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x3C800 -e 0x212 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader0") || \
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x3C000 -e 0x212 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader0") || \
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x3D000 -e 0x212 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader1") || \
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x3C800 -e 0x212 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader1") || \
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x3C000 -e 0x212 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader1")
 | 
			
		||||
		;;
 | 
			
		||||
	buffalo,wtr-m2133hp)
 | 
			
		||||
		caldata_extract "ART" 0x9000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(mtd_get_mac_binary ORGDATA 0x32)
 | 
			
		||||
		;;
 | 
			
		||||
	engenius,eap2200 |\
 | 
			
		||||
	openmesh,a62)
 | 
			
		||||
		caldata_extract "0:ART" 0x9000 0x2f20
 | 
			
		||||
		;;
 | 
			
		||||
	linksys,ea8300)
 | 
			
		||||
		caldata_extract "ART" 0x9000 0x2f20
 | 
			
		||||
		# OEM assigns 4 sequential MACs
 | 
			
		||||
		ath10k_patch_mac $(macaddr_setbit_la $(macaddr_add "$(cat /sys/class/net/eth0/address)" 4))
 | 
			
		||||
		;;
 | 
			
		||||
	esac
 | 
			
		||||
	;;
 | 
			
		||||
"ath10k/pre-cal-ahb-a000000.wifi.bin")
 | 
			
		||||
	case "$board" in
 | 
			
		||||
	8dev,habanero-dvk |\
 | 
			
		||||
	8dev,jalapeno |\
 | 
			
		||||
	alfa-network,ap120c-ac |\
 | 
			
		||||
	cilab,meshpoint-one |\
 | 
			
		||||
	ezviz,cs-w3-wd1200g-eup |\
 | 
			
		||||
	glinet,gl-b1300 |\
 | 
			
		||||
	glinet,gl-s1300 |\
 | 
			
		||||
	linksys,ea6350v3 |\
 | 
			
		||||
	mobipromo,cm520-79f |\
 | 
			
		||||
	p2w,r619ac-128m |\
 | 
			
		||||
	p2w,r619ac |\
 | 
			
		||||
	qcom,ap-dk01.1-c1)
 | 
			
		||||
		caldata_extract "ART" 0x1000 0x2f20
 | 
			
		||||
		;;
 | 
			
		||||
	aruba,ap-303 |\
 | 
			
		||||
	aruba,ap-303h |\
 | 
			
		||||
	aruba,ap-365)
 | 
			
		||||
		caldata_extract "ART" 0x1000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(mtd_get_mac_binary mfginfo 0x1D)
 | 
			
		||||
		;;
 | 
			
		||||
	asus,map-ac2200)
 | 
			
		||||
		caldata_extract_ubi "Factory" 0x1000 0x2f20
 | 
			
		||||
		;;
 | 
			
		||||
	asus,rt-ac58u)
 | 
			
		||||
		CI_UBIPART=UBI_DEV
 | 
			
		||||
		caldata_extract_ubi "Factory" 0x1000 0x2f20
 | 
			
		||||
		;;
 | 
			
		||||
	avm,fritzbox-4040)
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x400 -e 0x207 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader_config")
 | 
			
		||||
		;;
 | 
			
		||||
	avm,fritzbox-7530 |\
 | 
			
		||||
	avm,fritzrepeater-1200 |\
 | 
			
		||||
	avm,fritzrepeater-3000)
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x3C000 -e 0x207 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader0") || \
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x3C800 -e 0x207 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader0") || \
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x3D000 -e 0x207 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader0") || \
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x3C000 -e 0x207 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader1") || \
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x3C800 -e 0x207 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader1") || \
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x3D000 -e 0x207 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader1")
 | 
			
		||||
		;;
 | 
			
		||||
	buffalo,wtr-m2133hp)
 | 
			
		||||
		caldata_extract "ART" 0x1000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(mtd_get_mac_binary ORGDATA 0x26)
 | 
			
		||||
		;;
 | 
			
		||||
	cellc,rtl30vw |\
 | 
			
		||||
	compex,wpj419 |\
 | 
			
		||||
	compex,wpj428 |\
 | 
			
		||||
	engenius,eap1300 |\
 | 
			
		||||
	engenius,eap2200 |\
 | 
			
		||||
	openmesh,a42 |\
 | 
			
		||||
	openmesh,a62 |\
 | 
			
		||||
	qxwlan,e2600ac-c1 |\
 | 
			
		||||
	qxwlan,e2600ac-c2 |\
 | 
			
		||||
	unielec,u4019-32m)
 | 
			
		||||
		caldata_extract "0:ART" 0x1000 0x2f20
 | 
			
		||||
		;;
 | 
			
		||||
	dlink,dap-2610)
 | 
			
		||||
		caldata_extract "ART" 0x1000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(mtd_get_mac_ascii bdcfg wlanmac)
 | 
			
		||||
		;;
 | 
			
		||||
	engenius,emd1)
 | 
			
		||||
		caldata_extract "0:ART" 0x1000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(mtd_get_mac_ascii 0:APPSBLENV wlanaddr)
 | 
			
		||||
		;;
 | 
			
		||||
	engenius,emr3500)
 | 
			
		||||
		caldata_extract "0:ART" 0x1000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(mtd_get_mac_ascii 0:APPSBLENV ethaddr)
 | 
			
		||||
		;;
 | 
			
		||||
	engenius,ens620ext)
 | 
			
		||||
		caldata_extract "ART" 0x1000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(macaddr_add $(mtd_get_mac_ascii u-boot-env ethaddr) +2)
 | 
			
		||||
		;;
 | 
			
		||||
	linksys,ea8300)
 | 
			
		||||
		caldata_extract "ART" 0x1000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(macaddr_add "$(cat /sys/class/net/eth0/address)" 2)
 | 
			
		||||
		;;
 | 
			
		||||
	meraki,mr33)
 | 
			
		||||
		caldata_extract_ubi "ART" 0x1000 0x2f20
 | 
			
		||||
		caldata_valid "202f" || caldata_extract "ART" 0x1000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(macaddr_add $(get_mac_binary "/sys/bus/i2c/devices/0-0050/eeprom" 0x66) +2)
 | 
			
		||||
		;;
 | 
			
		||||
	netgear,ex6100v2 |\
 | 
			
		||||
	netgear,ex6150v2)
 | 
			
		||||
		caldata_extract "ART" 0x1000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(mtd_get_mac_binary dnidata 0x0)
 | 
			
		||||
		;;
 | 
			
		||||
	zyxel,nbg6617 |\
 | 
			
		||||
	zyxel,wre6606)
 | 
			
		||||
		caldata_extract "ART" 0x1000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) -2)
 | 
			
		||||
		;;
 | 
			
		||||
	esac
 | 
			
		||||
	;;
 | 
			
		||||
"ath10k/pre-cal-ahb-a800000.wifi.bin")
 | 
			
		||||
	case "$board" in
 | 
			
		||||
	8dev,habanero-dvk |\
 | 
			
		||||
	8dev,jalapeno |\
 | 
			
		||||
	alfa-network,ap120c-ac |\
 | 
			
		||||
	cilab,meshpoint-one |\
 | 
			
		||||
	ezviz,cs-w3-wd1200g-eup |\
 | 
			
		||||
	glinet,gl-b1300 |\
 | 
			
		||||
	glinet,gl-s1300 |\
 | 
			
		||||
	linksys,ea6350v3 |\
 | 
			
		||||
	mobipromo,cm520-79f |\
 | 
			
		||||
	p2w,r619ac-128m |\
 | 
			
		||||
	p2w,r619ac |\
 | 
			
		||||
	qcom,ap-dk01.1-c1)
 | 
			
		||||
		caldata_extract "ART" 0x5000 0x2f20
 | 
			
		||||
		;;
 | 
			
		||||
	aruba,ap-303 |\
 | 
			
		||||
	aruba,ap-303h |\
 | 
			
		||||
	aruba,ap-365)
 | 
			
		||||
		caldata_extract "ART" 0x5000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary mfginfo 0x1D) +1)
 | 
			
		||||
		;;
 | 
			
		||||
	asus,map-ac2200)
 | 
			
		||||
		caldata_extract_ubi "Factory" 0x5000 0x2f20
 | 
			
		||||
		;;
 | 
			
		||||
	asus,rt-ac58u)
 | 
			
		||||
		CI_UBIPART=UBI_DEV
 | 
			
		||||
		caldata_extract_ubi "Factory" 0x5000 0x2f20
 | 
			
		||||
		;;
 | 
			
		||||
	avm,fritzbox-4040)
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x400 -e 0x208 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader_config")
 | 
			
		||||
		;;
 | 
			
		||||
	avm,fritzbox-7530 |\
 | 
			
		||||
	avm,fritzrepeater-1200 |\
 | 
			
		||||
	avm,fritzrepeater-3000)
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x3C800 -e 0x208 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader0") || \
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x3D000 -e 0x208 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader0") || \
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x3C000 -e 0x208 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader0") || \
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x3C800 -e 0x208 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader1") || \
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x3D000 -e 0x208 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader1") || \
 | 
			
		||||
		/usr/bin/fritz_cal_extract -i 1 -s 0x3C000 -e 0x208 -l 12064 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader1")
 | 
			
		||||
		;;
 | 
			
		||||
	buffalo,wtr-m2133hp)
 | 
			
		||||
		caldata_extract "ART" 0x5000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(mtd_get_mac_binary ORGDATA 0x2c)
 | 
			
		||||
		;;
 | 
			
		||||
	cellc,rtl30vw |\
 | 
			
		||||
	compex,wpj419 |\
 | 
			
		||||
	compex,wpj428 |\
 | 
			
		||||
	engenius,eap1300 |\
 | 
			
		||||
	engenius,eap2200 |\
 | 
			
		||||
	openmesh,a42 |\
 | 
			
		||||
	openmesh,a62 |\
 | 
			
		||||
	qxwlan,e2600ac-c1 |\
 | 
			
		||||
	qxwlan,e2600ac-c2 |\
 | 
			
		||||
	unielec,u4019-32m)
 | 
			
		||||
		caldata_extract "0:ART" 0x5000 0x2f20
 | 
			
		||||
		;;
 | 
			
		||||
	dlink,dap-2610)
 | 
			
		||||
		caldata_extract "ART" 0x5000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(mtd_get_mac_ascii bdcfg wlanmac_a)
 | 
			
		||||
		;;
 | 
			
		||||
	engenius,emd1)
 | 
			
		||||
		caldata_extract "0:ART" 0x5000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(macaddr_add $(mtd_get_mac_ascii 0:APPSBLENV wlanaddr) +1)
 | 
			
		||||
		;;
 | 
			
		||||
	engenius,emr3500)
 | 
			
		||||
		caldata_extract "0:ART" 0x5000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(macaddr_add $(mtd_get_mac_ascii 0:APPSBLENV ethaddr) +1)
 | 
			
		||||
		;;
 | 
			
		||||
	engenius,ens620ext)
 | 
			
		||||
		caldata_extract "ART" 0x5000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(macaddr_add $(mtd_get_mac_ascii u-boot-env ethaddr) +3)
 | 
			
		||||
		;;
 | 
			
		||||
	linksys,ea8300)
 | 
			
		||||
		caldata_extract "ART" 0x5000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(macaddr_add "$(cat /sys/class/net/eth0/address)" 3)
 | 
			
		||||
		;;
 | 
			
		||||
	meraki,mr33)
 | 
			
		||||
		caldata_extract_ubi "ART" 0x5000 0x2f20
 | 
			
		||||
		caldata_valid "202f" || caldata_extract "ART" 0x5000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(macaddr_add $(get_mac_binary "/sys/bus/i2c/devices/0-0050/eeprom" 0x66) +3)
 | 
			
		||||
		;;
 | 
			
		||||
	netgear,ex6100v2 |\
 | 
			
		||||
	netgear,ex6150v2)
 | 
			
		||||
		caldata_extract "ART" 0x5000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(mtd_get_mac_binary dnidata 0xc)
 | 
			
		||||
		;;
 | 
			
		||||
	zyxel,nbg6617 |\
 | 
			
		||||
	zyxel,wre6606)
 | 
			
		||||
		caldata_extract "ART" 0x5000 0x2f20
 | 
			
		||||
		ath10k_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) -1)
 | 
			
		||||
		;;
 | 
			
		||||
	esac
 | 
			
		||||
	;;
 | 
			
		||||
*)
 | 
			
		||||
	exit 1
 | 
			
		||||
	;;
 | 
			
		||||
esac
 | 
			
		||||
							
								
								
									
										123
									
								
								root/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										123
									
								
								root/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,123 @@
 | 
			
		|||
PART_NAME=firmware
 | 
			
		||||
REQUIRE_IMAGE_METADATA=1
 | 
			
		||||
 | 
			
		||||
RAMFS_COPY_BIN='fw_printenv fw_setenv'
 | 
			
		||||
RAMFS_COPY_DATA='/etc/fw_env.config /var/lock/fw_printenv.lock'
 | 
			
		||||
 | 
			
		||||
platform_check_image() {
 | 
			
		||||
	case "$(board_name)" in
 | 
			
		||||
	asus,rt-ac58u)
 | 
			
		||||
		CI_UBIPART="UBI_DEV"
 | 
			
		||||
		local ubidev=$(nand_find_ubi $CI_UBIPART)
 | 
			
		||||
		local asus_root=$(nand_find_volume $ubidev jffs2)
 | 
			
		||||
 | 
			
		||||
		[ -n "$asus_root" ] || return 0
 | 
			
		||||
 | 
			
		||||
		cat << EOF
 | 
			
		||||
jffs2 partition is still present.
 | 
			
		||||
There's probably no space left
 | 
			
		||||
to install the filesystem.
 | 
			
		||||
 | 
			
		||||
You need to delete the jffs2 partition first:
 | 
			
		||||
# ubirmvol /dev/ubi0 --name=jffs2
 | 
			
		||||
 | 
			
		||||
Once this is done. Retry.
 | 
			
		||||
EOF
 | 
			
		||||
		return 1
 | 
			
		||||
		;;
 | 
			
		||||
	esac
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
askey_do_upgrade() {
 | 
			
		||||
	local tar_file="$1"
 | 
			
		||||
 | 
			
		||||
	local board_dir=$(tar tf $tar_file | grep -m 1 '^sysupgrade-.*/$')
 | 
			
		||||
	board_dir=${board_dir%/}
 | 
			
		||||
 | 
			
		||||
	tar Oxf $tar_file ${board_dir}/root | mtd write - rootfs
 | 
			
		||||
 | 
			
		||||
	nand_do_upgrade "$1"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
zyxel_do_upgrade() {
 | 
			
		||||
	local tar_file="$1"
 | 
			
		||||
 | 
			
		||||
	local board_dir=$(tar tf $tar_file | grep -m 1 '^sysupgrade-.*/$')
 | 
			
		||||
	board_dir=${board_dir%/}
 | 
			
		||||
 | 
			
		||||
	tar Oxf $tar_file ${board_dir}/kernel | mtd write - kernel
 | 
			
		||||
 | 
			
		||||
	if [ -n "$UPGRADE_BACKUP" ]; then
 | 
			
		||||
		tar Oxf $tar_file ${board_dir}/root | mtd -j "$UPGRADE_BACKUP" write - rootfs
 | 
			
		||||
	else
 | 
			
		||||
		tar Oxf $tar_file ${board_dir}/root | mtd write - rootfs
 | 
			
		||||
	fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
platform_do_upgrade() {
 | 
			
		||||
	case "$(board_name)" in
 | 
			
		||||
	8dev,jalapeno |\
 | 
			
		||||
	aruba,ap-303 |\
 | 
			
		||||
	aruba,ap-303h |\
 | 
			
		||||
	aruba,ap-365 |\
 | 
			
		||||
	avm,fritzbox-7530 |\
 | 
			
		||||
	avm,fritzrepeater-1200 |\
 | 
			
		||||
	avm,fritzrepeater-3000 |\
 | 
			
		||||
	buffalo,wtr-m2133hp |\
 | 
			
		||||
	cilab,meshpoint-one |\
 | 
			
		||||
	engenius,eap2200 |\
 | 
			
		||||
	mobipromo,cm520-79f |\
 | 
			
		||||
	qxwlan,e2600ac-c2)
 | 
			
		||||
		nand_do_upgrade "$1"
 | 
			
		||||
		;;
 | 
			
		||||
	alfa-network,ap120c-ac)
 | 
			
		||||
		part="$(awk -F 'ubi.mtd=' '{printf $2}' /proc/cmdline | sed -e 's/ .*$//')"
 | 
			
		||||
		if [ "$part" = "rootfs1" ]; then
 | 
			
		||||
			fw_setenv active 2 || exit 1
 | 
			
		||||
			CI_UBIPART="rootfs2"
 | 
			
		||||
		else
 | 
			
		||||
			fw_setenv active 1 || exit 1
 | 
			
		||||
			CI_UBIPART="rootfs1"
 | 
			
		||||
		fi
 | 
			
		||||
		nand_do_upgrade "$1"
 | 
			
		||||
		;;
 | 
			
		||||
	asus,map-ac2200)
 | 
			
		||||
		CI_KERNPART="linux"
 | 
			
		||||
		nand_do_upgrade "$1"
 | 
			
		||||
		;;
 | 
			
		||||
	asus,rt-ac58u)
 | 
			
		||||
		CI_UBIPART="UBI_DEV"
 | 
			
		||||
		CI_KERNPART="linux"
 | 
			
		||||
		nand_do_upgrade "$1"
 | 
			
		||||
		;;
 | 
			
		||||
	cellc,rtl30vw)
 | 
			
		||||
		CI_UBIPART="ubifs"
 | 
			
		||||
		askey_do_upgrade "$1"
 | 
			
		||||
		;;
 | 
			
		||||
	compex,wpj419|\
 | 
			
		||||
	p2w,r619ac-128m|\
 | 
			
		||||
	p2w,r619ac)
 | 
			
		||||
		nand_do_upgrade "$1"
 | 
			
		||||
		;;
 | 
			
		||||
	linksys,ea6350v3 |\
 | 
			
		||||
	linksys,ea8300)
 | 
			
		||||
		platform_do_upgrade_linksys "$1"
 | 
			
		||||
		;;
 | 
			
		||||
	meraki,mr33)
 | 
			
		||||
		CI_KERNPART="part.safe"
 | 
			
		||||
		nand_do_upgrade "$1"
 | 
			
		||||
		;;
 | 
			
		||||
	openmesh,a42 |\
 | 
			
		||||
	openmesh,a62)
 | 
			
		||||
		PART_NAME="inactive"
 | 
			
		||||
		platform_do_upgrade_openmesh "$1"
 | 
			
		||||
		;;
 | 
			
		||||
	zyxel,nbg6617)
 | 
			
		||||
		zyxel_do_upgrade "$1"
 | 
			
		||||
		;;
 | 
			
		||||
	*)
 | 
			
		||||
		default_do_upgrade "$1"
 | 
			
		||||
		;;
 | 
			
		||||
	esac
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,18 @@
 | 
			
		|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
 | 
			
		||||
 | 
			
		||||
#include "qcom-ipq4019-r619ac.dtsi"
 | 
			
		||||
 | 
			
		||||
/ {
 | 
			
		||||
	model = "P&W R619AC 128M";
 | 
			
		||||
	compatible = "p2w,r619ac-128m";
 | 
			
		||||
 | 
			
		||||
	chosen {
 | 
			
		||||
		bootargs-append = " root=/dev/ubiblock0_1 rootfstype=squashfs";
 | 
			
		||||
	};
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
&rootfs_part1 {
 | 
			
		||||
	reg = <0x0 0x8000000>;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/delete-node/ &rootfs_part2;
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,12 @@
 | 
			
		|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
 | 
			
		||||
 | 
			
		||||
#include "qcom-ipq4019-r619ac.dtsi"
 | 
			
		||||
 | 
			
		||||
/ {
 | 
			
		||||
	model = "P&W R619AC";
 | 
			
		||||
	compatible = "p2w,r619ac";
 | 
			
		||||
 | 
			
		||||
	chosen {
 | 
			
		||||
		bootargs-append = " root=/dev/ubiblock0_1 rootfstype=squashfs";
 | 
			
		||||
	};
 | 
			
		||||
};
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,322 @@
 | 
			
		|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
 | 
			
		||||
 | 
			
		||||
#include "qcom-ipq4019.dtsi"
 | 
			
		||||
#include <dt-bindings/gpio/gpio.h>
 | 
			
		||||
#include <dt-bindings/input/input.h>
 | 
			
		||||
#include <dt-bindings/soc/qcom,tcsr.h>
 | 
			
		||||
 | 
			
		||||
/ {
 | 
			
		||||
	aliases {
 | 
			
		||||
		led-boot = &led_sys;
 | 
			
		||||
		led-failsafe = &led_sys;
 | 
			
		||||
		led-running = &led_sys;
 | 
			
		||||
		led-upgrade = &led_sys;
 | 
			
		||||
		label-mac-device = &gmac0;
 | 
			
		||||
	};
 | 
			
		||||
 | 
			
		||||
	soc {
 | 
			
		||||
		rng@22000 {
 | 
			
		||||
			status = "okay";
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		mdio@90000 {
 | 
			
		||||
			status = "okay";
 | 
			
		||||
			pinctrl-0 = <&mdio_pins>;
 | 
			
		||||
			pinctrl-names = "default";
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		ess-psgmii@98000 {
 | 
			
		||||
			status = "okay";
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		tcsr@1949000 {
 | 
			
		||||
			compatible = "qcom,tcsr";
 | 
			
		||||
			reg = <0x1949000 0x100>;
 | 
			
		||||
			qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>;
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		tcsr@194b000 {
 | 
			
		||||
			compatible = "qcom,tcsr";
 | 
			
		||||
			reg = <0x194b000 0x100>;
 | 
			
		||||
			qcom,usb-hsphy-mode-select = <TCSR_USB_HSPHY_HOST_MODE>;
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		ess_tcsr@1953000 {
 | 
			
		||||
			compatible = "qcom,tcsr";
 | 
			
		||||
			reg = <0x1953000 0x1000>;
 | 
			
		||||
			qcom,ess-interface-select = <TCSR_ESS_PSGMII>;
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		tcsr@1957000 {
 | 
			
		||||
			compatible = "qcom,tcsr";
 | 
			
		||||
			reg = <0x1957000 0x100>;
 | 
			
		||||
			qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		usb2@60f8800 {
 | 
			
		||||
			status = "okay";
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		usb3@8af8800 {
 | 
			
		||||
			status = "okay";
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		crypto@8e3a000 {
 | 
			
		||||
			status = "okay";
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		watchdog@b017000 {
 | 
			
		||||
			status = "okay";
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		ess-switch@c000000 {
 | 
			
		||||
			status = "okay";
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		edma@c080000 {
 | 
			
		||||
			status = "okay";
 | 
			
		||||
		};
 | 
			
		||||
	};
 | 
			
		||||
 | 
			
		||||
	leds {
 | 
			
		||||
		compatible = "gpio-leds";
 | 
			
		||||
		pinctrl-0 = <&led_pins>;
 | 
			
		||||
		pinctrl-names = "default";
 | 
			
		||||
 | 
			
		||||
		led_sys: sys {
 | 
			
		||||
			label = "r619ac:blue:sys";
 | 
			
		||||
			gpios = <&tlmm 39 GPIO_ACTIVE_HIGH>;
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		wlan2g {
 | 
			
		||||
			label = "r619ac:blue:wlan2g";
 | 
			
		||||
			gpios = <&tlmm 32 GPIO_ACTIVE_HIGH>;
 | 
			
		||||
			linux,default-trigger = "phy0tpt";
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		wlan5g {
 | 
			
		||||
			label = "r619ac:blue:wlan5g";
 | 
			
		||||
			gpios = <&tlmm 50 GPIO_ACTIVE_HIGH>;
 | 
			
		||||
			linux,default-trigger = "phy1tpt";
 | 
			
		||||
		};
 | 
			
		||||
	};
 | 
			
		||||
 | 
			
		||||
	keys {
 | 
			
		||||
		compatible = "gpio-keys";
 | 
			
		||||
 | 
			
		||||
		reset {
 | 
			
		||||
			label = "reset";
 | 
			
		||||
			gpios = <&tlmm 18 GPIO_ACTIVE_LOW>;
 | 
			
		||||
			linux,code = <KEY_RESTART>;
 | 
			
		||||
		};
 | 
			
		||||
	};
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
&blsp_dma {
 | 
			
		||||
	status = "okay";
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
&blsp1_spi1 {
 | 
			
		||||
	status = "okay";
 | 
			
		||||
 | 
			
		||||
	flash@0 {
 | 
			
		||||
		reg = <0>;
 | 
			
		||||
		compatible = "jedec,spi-nor";
 | 
			
		||||
		spi-max-frequency = <24000000>;
 | 
			
		||||
 | 
			
		||||
		partitions {
 | 
			
		||||
			compatible = "fixed-partitions";
 | 
			
		||||
			#address-cells = <1>;
 | 
			
		||||
			#size-cells = <1>;
 | 
			
		||||
 | 
			
		||||
			partition@0 {
 | 
			
		||||
				label = "SBL1";
 | 
			
		||||
				reg = <0x0 0x40000>;
 | 
			
		||||
				read-only;
 | 
			
		||||
			};
 | 
			
		||||
 | 
			
		||||
			partition@40000 {
 | 
			
		||||
				label = "MIBIB";
 | 
			
		||||
				reg = <0x40000 0x20000>;
 | 
			
		||||
				read-only;
 | 
			
		||||
			};
 | 
			
		||||
 | 
			
		||||
			partition@60000 {
 | 
			
		||||
				label = "QSEE";
 | 
			
		||||
				reg = <0x60000 0x60000>;
 | 
			
		||||
				read-only;
 | 
			
		||||
			};
 | 
			
		||||
 | 
			
		||||
			partition@c0000 {
 | 
			
		||||
				label = "CDT";
 | 
			
		||||
				reg = <0xc0000 0x10000>;
 | 
			
		||||
				read-only;
 | 
			
		||||
			};
 | 
			
		||||
 | 
			
		||||
			partition@d0000 {
 | 
			
		||||
				label = "DDRPARAMS";
 | 
			
		||||
				reg = <0xd0000 0x10000>;
 | 
			
		||||
				read-only;
 | 
			
		||||
			};
 | 
			
		||||
 | 
			
		||||
			partition@e0000 {
 | 
			
		||||
				label = "APPSBLENV";
 | 
			
		||||
				reg = <0xe0000 0x10000>;
 | 
			
		||||
				read-only;
 | 
			
		||||
			};
 | 
			
		||||
 | 
			
		||||
			partition@f0000 {
 | 
			
		||||
				label = "APPSBL";
 | 
			
		||||
				reg = <0xf0000 0x80000>;
 | 
			
		||||
				read-only;
 | 
			
		||||
			};
 | 
			
		||||
 | 
			
		||||
			partition@1 {
 | 
			
		||||
				label = "Bootloader";
 | 
			
		||||
				reg = <0x0 0x170000>;
 | 
			
		||||
				read-only;
 | 
			
		||||
			};
 | 
			
		||||
 | 
			
		||||
			partition@170000 {
 | 
			
		||||
				label = "ART";
 | 
			
		||||
				reg = <0x170000 0x10000>;
 | 
			
		||||
				read-only;
 | 
			
		||||
			};
 | 
			
		||||
 | 
			
		||||
			partition@180000 {
 | 
			
		||||
				label = "unused";
 | 
			
		||||
				reg = <0x180000 0xe80000>;
 | 
			
		||||
			};
 | 
			
		||||
		};
 | 
			
		||||
	};
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
&blsp1_uart1 {
 | 
			
		||||
	pinctrl-0 = <&serial_0_pins>;
 | 
			
		||||
	pinctrl-names = "default";
 | 
			
		||||
	status = "okay";
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
&cryptobam {
 | 
			
		||||
	status = "okay";
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
&nand {
 | 
			
		||||
	status = "okay";
 | 
			
		||||
 | 
			
		||||
	nand@0 {
 | 
			
		||||
		partitions {
 | 
			
		||||
			compatible = "fixed-partitions";
 | 
			
		||||
			#address-cells = <1>;
 | 
			
		||||
			#size-cells = <1>;
 | 
			
		||||
 | 
			
		||||
			rootfs_part1: partition@0 {
 | 
			
		||||
				label = "rootfs";
 | 
			
		||||
				reg = <0x0 0x4000000>;
 | 
			
		||||
			};
 | 
			
		||||
 | 
			
		||||
			rootfs_part2: partition@4000000 {
 | 
			
		||||
				label = "unused1";
 | 
			
		||||
				reg = <0x4000000 0x4000000>;
 | 
			
		||||
			};
 | 
			
		||||
		};
 | 
			
		||||
	};
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
&qpic_bam {
 | 
			
		||||
	status = "okay";
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
&sdhci {
 | 
			
		||||
	pinctrl-0 = <&sd_0_pins>;
 | 
			
		||||
	pinctrl-names = "default";
 | 
			
		||||
	vqmmc-supply = <&vqmmc>;
 | 
			
		||||
	status = "okay";
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
&tlmm {
 | 
			
		||||
	mdio_pins: mdio_pinmux {
 | 
			
		||||
		mux_1 {
 | 
			
		||||
			pins = "gpio6";
 | 
			
		||||
			function = "mdio";
 | 
			
		||||
			bias-pull-up;
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		mux_2 {
 | 
			
		||||
			pins = "gpio7";
 | 
			
		||||
			function = "mdc";
 | 
			
		||||
			bias-pull-up;
 | 
			
		||||
		};
 | 
			
		||||
	};
 | 
			
		||||
 | 
			
		||||
	sd_0_pins: sd_0_pinmux {
 | 
			
		||||
		mux_1 {
 | 
			
		||||
			pins = "gpio23", "gpio24", "gpio25", "gpio26", "gpio28";
 | 
			
		||||
			function = "sdio";
 | 
			
		||||
			drive-strength = <10>;
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		mux_2 {
 | 
			
		||||
			pins = "gpio27";
 | 
			
		||||
			function = "sdio";
 | 
			
		||||
			drive-strength = <16>;
 | 
			
		||||
		};
 | 
			
		||||
	};
 | 
			
		||||
 | 
			
		||||
	serial_0_pins: serial0-pinmux {
 | 
			
		||||
		mux {
 | 
			
		||||
			pins = "gpio16", "gpio17";
 | 
			
		||||
			function = "blsp_uart0";
 | 
			
		||||
			bias-disable;
 | 
			
		||||
		};
 | 
			
		||||
	};
 | 
			
		||||
 | 
			
		||||
	led_pins: led_pinmux {
 | 
			
		||||
		mux {
 | 
			
		||||
			pins = "gpio32", "gpio39", "gpio50";
 | 
			
		||||
			function = "gpio";
 | 
			
		||||
			bias-pull-up;
 | 
			
		||||
			output-low;
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		mux_1 {
 | 
			
		||||
			pins = "gpio52";
 | 
			
		||||
			function = "gpio";
 | 
			
		||||
			bias-pull-up;
 | 
			
		||||
			output-high;
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		mux_2 {
 | 
			
		||||
			pins = "gpio61";
 | 
			
		||||
			function = "gpio";
 | 
			
		||||
			bias-pull-down;
 | 
			
		||||
			output-high;
 | 
			
		||||
		};
 | 
			
		||||
	};
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
&usb3_ss_phy {
 | 
			
		||||
	status = "okay";
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
&usb3_hs_phy {
 | 
			
		||||
	status = "okay";
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
&usb2_hs_phy {
 | 
			
		||||
	status = "okay";
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
&vqmmc {
 | 
			
		||||
	status = "okay";
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
&wifi0 {
 | 
			
		||||
	status = "okay";
 | 
			
		||||
	qcom,ath10k-calibration-variant = "R619AC";
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
&wifi1 {
 | 
			
		||||
	status = "okay";
 | 
			
		||||
	qcom,ath10k-calibration-variant = "R619AC";
 | 
			
		||||
};
 | 
			
		||||
							
								
								
									
										734
									
								
								root/target/linux/ipq40xx/image/Makefile
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										734
									
								
								root/target/linux/ipq40xx/image/Makefile
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,734 @@
 | 
			
		|||
include $(TOPDIR)/rules.mk
 | 
			
		||||
include $(INCLUDE_DIR)/image.mk
 | 
			
		||||
 | 
			
		||||
DEVICE_VARS += NETGEAR_BOARD_ID NETGEAR_HW_ID
 | 
			
		||||
DEVICE_VARS += RAS_BOARD RAS_ROOTFS_SIZE RAS_VERSION
 | 
			
		||||
DEVICE_VARS += WRGG_DEVNAME WRGG_SIGNATURE
 | 
			
		||||
 | 
			
		||||
define Device/Default
 | 
			
		||||
	PROFILES := Default
 | 
			
		||||
	KERNEL_DEPENDS = $$(wildcard $(DTS_DIR)/$$(DEVICE_DTS).dts)
 | 
			
		||||
	KERNEL_INITRAMFS_PREFIX := $$(IMG_PREFIX)-$(1)-initramfs
 | 
			
		||||
	KERNEL_PREFIX := $$(IMAGE_PREFIX)
 | 
			
		||||
	KERNEL_LOADADDR := 0x80208000
 | 
			
		||||
	DEVICE_DTS = $$(SOC)-$(lastword $(subst _, ,$(1)))
 | 
			
		||||
	SUPPORTED_DEVICES := $(subst _,$(comma),$(1))
 | 
			
		||||
	IMAGES := sysupgrade.bin
 | 
			
		||||
	IMAGE/sysupgrade.bin = sysupgrade-tar | append-metadata
 | 
			
		||||
	IMAGE/sysupgrade.bin/squashfs :=
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define Device/FitImage
 | 
			
		||||
	KERNEL_SUFFIX := -fit-uImage.itb
 | 
			
		||||
	KERNEL = kernel-bin | gzip | fit gzip $$(DTS_DIR)/$$(DEVICE_DTS).dtb
 | 
			
		||||
	KERNEL_NAME := Image
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define Device/FitImageLzma
 | 
			
		||||
	KERNEL_SUFFIX := -fit-uImage.itb
 | 
			
		||||
	KERNEL = kernel-bin | lzma | fit lzma $$(DTS_DIR)/$$(DEVICE_DTS).dtb
 | 
			
		||||
	KERNEL_NAME := Image
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define Device/FitzImage
 | 
			
		||||
	KERNEL_SUFFIX := -fit-zImage.itb
 | 
			
		||||
	KERNEL = kernel-bin | fit none $$(DTS_DIR)/$$(DEVICE_DTS).dtb
 | 
			
		||||
	KERNEL_NAME := zImage
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define Device/UbiFit
 | 
			
		||||
	KERNEL_IN_UBI := 1
 | 
			
		||||
	IMAGES := nand-factory.ubi nand-sysupgrade.bin
 | 
			
		||||
	IMAGE/nand-factory.ubi := append-ubi
 | 
			
		||||
	IMAGE/nand-sysupgrade.bin := sysupgrade-tar | append-metadata
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define Device/DniImage
 | 
			
		||||
	$(call Device/FitzImage)
 | 
			
		||||
	NETGEAR_BOARD_ID :=
 | 
			
		||||
	NETGEAR_HW_ID :=
 | 
			
		||||
	IMAGES += factory.img
 | 
			
		||||
	IMAGE/factory.img := append-kernel | pad-offset 64k 64 | append-uImage-fakehdr filesystem | append-rootfs | pad-rootfs | netgear-dni
 | 
			
		||||
	IMAGE/sysupgrade.bin := append-kernel | pad-offset 64k 64 | append-uImage-fakehdr filesystem | \
 | 
			
		||||
		append-rootfs | pad-rootfs | append-metadata | check-size
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define Build/append-rootfshdr
 | 
			
		||||
	mkimage -A $(LINUX_KARCH) \
 | 
			
		||||
		-O linux -T filesystem \
 | 
			
		||||
		-C lzma -a $(KERNEL_LOADADDR) -e $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
 | 
			
		||||
		-n root.squashfs -d $(IMAGE_ROOTFS) $@.new
 | 
			
		||||
	dd if=$@.new bs=64 count=1 >> $(IMAGE_KERNEL)
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define Build/mkmylofw_32m
 | 
			
		||||
	$(eval device_id=$(word 1,$(1)))
 | 
			
		||||
	$(eval revision=$(word 2,$(1)))
 | 
			
		||||
 | 
			
		||||
	let \
 | 
			
		||||
		size="$$(stat -c%s $@)" \
 | 
			
		||||
		pad="$(subst k,* 1024,$(BLOCKSIZE))" \
 | 
			
		||||
		pad="(pad - (size % pad)) % pad" \
 | 
			
		||||
		newsize='size + pad'; \
 | 
			
		||||
		$(STAGING_DIR_HOST)/bin/mkmylofw \
 | 
			
		||||
		-B WPE72 -i 0x11f6:$(device_id):0x11f6:$(device_id) -r $(revision) \
 | 
			
		||||
		-s 0x2000000 -p0x180000:$$newsize:al:0x80208000:"OpenWrt":$@ \
 | 
			
		||||
		$@.new
 | 
			
		||||
	@mv $@.new $@
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define Build/qsdk-ipq-factory-nand-askey
 | 
			
		||||
	$(TOPDIR)/scripts/mkits-qsdk-ipq-image.sh $@.its\
 | 
			
		||||
		askey_kernel $(IMAGE_KERNEL) \
 | 
			
		||||
		askey_fs $(IMAGE_ROOTFS) \
 | 
			
		||||
		ubifs $@
 | 
			
		||||
	PATH=$(LINUX_DIR)/scripts/dtc:$(PATH) mkimage -f $@.its $@.new
 | 
			
		||||
	@mv $@.new $@
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define Build/SenaoFW
 | 
			
		||||
	-$(STAGING_DIR_HOST)/bin/mksenaofw \
 | 
			
		||||
		-n $(BOARD_NAME) -r $(VENDOR_ID) -p $(1) \
 | 
			
		||||
		-c $(DATECODE) -w $(2) -x $(CW_VER) -t 0 \
 | 
			
		||||
		-e $@ \
 | 
			
		||||
		-o $@.new
 | 
			
		||||
	@cp $@.new $@
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define Build/wrgg-image
 | 
			
		||||
	mkwrggimg -i $@ \
 | 
			
		||||
	-o $@.new \
 | 
			
		||||
	-d "$(WRGG_DEVNAME)" \
 | 
			
		||||
	-s "$(WRGG_SIGNATURE)" \
 | 
			
		||||
	-v "" -m "" -B ""
 | 
			
		||||
	mv $@.new $@
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define Device/8dev_habanero-dvk
 | 
			
		||||
	$(call Device/FitImageLzma)
 | 
			
		||||
	DEVICE_VENDOR := 8devices
 | 
			
		||||
	DEVICE_MODEL := Habanero DVK
 | 
			
		||||
	IMAGE_SIZE := 30976k
 | 
			
		||||
	SOC := qcom-ipq4019
 | 
			
		||||
	DEVICE_PACKAGES := ipq-wifi-8dev_habanero-dvk
 | 
			
		||||
	IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | append-rootfs | pad-rootfs | append-metadata | check-size
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += 8dev_habanero-dvk
 | 
			
		||||
 | 
			
		||||
define Device/8dev_jalapeno-common
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	$(call Device/UbiFit)
 | 
			
		||||
	BLOCKSIZE := 128k
 | 
			
		||||
	PAGESIZE := 2048
 | 
			
		||||
	SOC := qcom-ipq4018
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define Device/8dev_jalapeno
 | 
			
		||||
	$(call Device/8dev_jalapeno-common)
 | 
			
		||||
	DEVICE_VENDOR := 8devices
 | 
			
		||||
	DEVICE_MODEL := Jalapeno
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += 8dev_jalapeno
 | 
			
		||||
 | 
			
		||||
define Device/alfa-network_ap120c-ac
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	$(call Device/UbiFit)
 | 
			
		||||
	DEVICE_VENDOR := ALFA Network
 | 
			
		||||
	DEVICE_MODEL := AP120C-AC
 | 
			
		||||
	SOC := qcom-ipq4018
 | 
			
		||||
	DEVICE_PACKAGES := kmod-usb-acm \
 | 
			
		||||
		kmod-tpm-i2c-atmel uboot-envtools
 | 
			
		||||
	BLOCKSIZE := 128k
 | 
			
		||||
	PAGESIZE := 2048
 | 
			
		||||
	IMAGE_SIZE := 65536k
 | 
			
		||||
	IMAGES := nand-factory.bin nand-sysupgrade.bin
 | 
			
		||||
	IMAGE/nand-factory.bin := append-ubi | qsdk-ipq-factory-nand
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += alfa-network_ap120c-ac
 | 
			
		||||
 | 
			
		||||
define Device/aruba_glenmorangie
 | 
			
		||||
	$(call Device/FitImageLzma)
 | 
			
		||||
	DEVICE_VENDOR := Aruba
 | 
			
		||||
	SOC := qcom-ipq4029
 | 
			
		||||
	DEVICE_PACKAGES := ipq-wifi-aruba_ap-303
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define Device/aruba_ap-303
 | 
			
		||||
	$(call Device/aruba_glenmorangie)
 | 
			
		||||
	DEVICE_MODEL := AP-303
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += aruba_ap-303
 | 
			
		||||
 | 
			
		||||
define Device/aruba_ap-303h
 | 
			
		||||
	$(call Device/aruba_glenmorangie)
 | 
			
		||||
	DEVICE_MODEL := AP-303H
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += aruba_ap-303h
 | 
			
		||||
 | 
			
		||||
define Device/aruba_ap-365
 | 
			
		||||
	$(call Device/aruba_glenmorangie)
 | 
			
		||||
	DEVICE_MODEL := AP-365
 | 
			
		||||
	DEVICE_PACKAGES += kmod-hwmon-ad7418
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += aruba_ap-365
 | 
			
		||||
 | 
			
		||||
define Device/asus_map-ac2200
 | 
			
		||||
	$(call Device/FitImageLzma)
 | 
			
		||||
	DEVICE_VENDOR := ASUS
 | 
			
		||||
	DEVICE_MODEL := Lyra (MAP-AC2200)
 | 
			
		||||
	SOC := qcom-ipq4019
 | 
			
		||||
	DEVICE_PACKAGES := ath10k-firmware-qca9888-ct kmod-ath3k
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += asus_map-ac2200
 | 
			
		||||
 | 
			
		||||
define Device/asus_rt-ac58u
 | 
			
		||||
	$(call Device/FitImageLzma)
 | 
			
		||||
	DEVICE_VENDOR := ASUS
 | 
			
		||||
	DEVICE_MODEL := RT-AC58U
 | 
			
		||||
	SOC := qcom-ipq4018
 | 
			
		||||
	BLOCKSIZE := 128k
 | 
			
		||||
	PAGESIZE := 2048
 | 
			
		||||
	DTB_SIZE := 65536
 | 
			
		||||
	IMAGE_SIZE := 20439364
 | 
			
		||||
	FILESYSTEMS := squashfs
 | 
			
		||||
#	Someone - in their infinite wisdom - decided to put the firmware
 | 
			
		||||
#	version in front of the image name \03\00\00\04 => Version 3.0.0.4
 | 
			
		||||
#	Since u-boot works with strings we either need another fixup step
 | 
			
		||||
#	to add a version... or we are very careful not to add '\0' into that
 | 
			
		||||
#	string and call it a day.... Yeah, we do the latter!
 | 
			
		||||
	UIMAGE_NAME:=$(shell echo -e '\03\01\01\01RT-AC58U')
 | 
			
		||||
	DEVICE_PACKAGES := -kmod-ath10k-ct kmod-ath10k-ct-smallbuffers \
 | 
			
		||||
		kmod-usb-ledtrig-usbport
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += asus_rt-ac58u
 | 
			
		||||
 | 
			
		||||
define Device/avm_fritzbox-4040
 | 
			
		||||
	$(call Device/FitImageLzma)
 | 
			
		||||
	DEVICE_VENDOR := AVM
 | 
			
		||||
	DEVICE_MODEL := FRITZ!Box 4040
 | 
			
		||||
	SOC := qcom-ipq4018
 | 
			
		||||
	BOARD_NAME := fritz4040
 | 
			
		||||
	IMAGE_SIZE := 29056k
 | 
			
		||||
	UBOOT_PATH := $(STAGING_DIR_IMAGE)/uboot-fritz4040.bin
 | 
			
		||||
	UBOOT_PARTITION_SIZE := 524288
 | 
			
		||||
	IMAGES += eva.bin
 | 
			
		||||
	IMAGE/eva.bin := append-uboot | pad-to $$$$(UBOOT_PARTITION_SIZE) | append-kernel | append-rootfs | pad-rootfs
 | 
			
		||||
	IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size
 | 
			
		||||
	DEVICE_PACKAGES := fritz-tffs fritz-caldata
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += avm_fritzbox-4040
 | 
			
		||||
 | 
			
		||||
define Device/avm_fritzbox-7530
 | 
			
		||||
	$(call Device/FitImageLzma)
 | 
			
		||||
	DEVICE_VENDOR := AVM
 | 
			
		||||
	DEVICE_MODEL := FRITZ!Box 7530
 | 
			
		||||
	SOC := qcom-ipq4019
 | 
			
		||||
	DEVICE_PACKAGES := fritz-caldata fritz-tffs-nand
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += avm_fritzbox-7530
 | 
			
		||||
 | 
			
		||||
define Device/avm_fritzrepeater-1200
 | 
			
		||||
	$(call Device/FitImageLzma)
 | 
			
		||||
	DEVICE_VENDOR := AVM
 | 
			
		||||
	DEVICE_MODEL := FRITZ!Repeater 1200
 | 
			
		||||
	SOC := qcom-ipq4019
 | 
			
		||||
	DEVICE_PACKAGES := fritz-caldata fritz-tffs-nand ipq-wifi-avm_fritzrepeater-1200
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += avm_fritzrepeater-1200
 | 
			
		||||
 | 
			
		||||
define Device/avm_fritzrepeater-3000
 | 
			
		||||
	$(call Device/FitImageLzma)
 | 
			
		||||
	DEVICE_VENDOR := AVM
 | 
			
		||||
	DEVICE_MODEL := FRITZ!Repeater 3000
 | 
			
		||||
	SOC := qcom-ipq4019
 | 
			
		||||
	DEVICE_PACKAGES := ath10k-firmware-qca9984-ct fritz-caldata fritz-tffs-nand
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += avm_fritzrepeater-3000
 | 
			
		||||
 | 
			
		||||
define Device/buffalo_wtr-m2133hp
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	$(call Device/UbiFit)
 | 
			
		||||
	DEVICE_VENDOR := Buffalo
 | 
			
		||||
	DEVICE_MODEL := WTR-M2133HP
 | 
			
		||||
	SOC := qcom-ipq4019
 | 
			
		||||
	DEVICE_PACKAGES := uboot-envtools ath10k-firmware-qca9984-ct ipq-wifi-buffalo_wtr-m2133hp
 | 
			
		||||
	BLOCKSIZE := 128k
 | 
			
		||||
	PAGESIZE := 2048
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += buffalo_wtr-m2133hp
 | 
			
		||||
 | 
			
		||||
define Device/cellc_rtl30vw
 | 
			
		||||
	KERNEL_SUFFIX := -fit-uImage.itb
 | 
			
		||||
	KERNEL_INITRAMFS = kernel-bin | gzip | fit gzip $$(DTS_DIR)/$$(DEVICE_DTS).dtb
 | 
			
		||||
	KERNEL = kernel-bin | gzip | fit gzip $$(DTS_DIR)/$$(DEVICE_DTS).dtb | uImage lzma | pad-to 2048
 | 
			
		||||
	KERNEL_NAME := Image
 | 
			
		||||
	KERNEL_IN_UBI :=
 | 
			
		||||
	IMAGES := nand-factory.bin nand-sysupgrade.bin
 | 
			
		||||
	IMAGE/nand-factory.bin := append-rootfshdr | append-ubi | qsdk-ipq-factory-nand-askey
 | 
			
		||||
	IMAGE/nand-sysupgrade.bin := append-rootfshdr | sysupgrade-tar | append-metadata
 | 
			
		||||
	DEVICE_VENDOR := Cell C
 | 
			
		||||
	DEVICE_MODEL := RTL30VW
 | 
			
		||||
	SOC := qcom-ipq4019
 | 
			
		||||
	DEVICE_DTS_CONFIG := config@5
 | 
			
		||||
	KERNEL_INSTALL := 1
 | 
			
		||||
	KERNEL_SIZE := 4096k
 | 
			
		||||
	IMAGE_SIZE := 57344k
 | 
			
		||||
	BLOCKSIZE := 128k
 | 
			
		||||
	PAGESIZE := 2048
 | 
			
		||||
	DEVICE_PACKAGES := kmod-usb-net-qmi-wwan kmod-usb-serial-option uqmi ipq-wifi-cellc_rtl30vw
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += cellc_rtl30vw
 | 
			
		||||
 | 
			
		||||
define Device/cilab_meshpoint-one
 | 
			
		||||
	$(call Device/8dev_jalapeno-common)
 | 
			
		||||
	DEVICE_VENDOR := Crisis Innovation Lab
 | 
			
		||||
	DEVICE_MODEL := MeshPoint.One
 | 
			
		||||
	DEVICE_PACKAGES := kmod-i2c-gpio kmod-iio-bmp280-i2c kmod-hwmon-ina2xx kmod-rtc-pcf2127
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += cilab_meshpoint-one
 | 
			
		||||
 | 
			
		||||
define Device/compex_wpj419
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	$(call Device/UbiFit)
 | 
			
		||||
	DEVICE_VENDOR := Compex
 | 
			
		||||
	DEVICE_MODEL := WPJ419
 | 
			
		||||
	SOC := qcom-ipq4019
 | 
			
		||||
	DEVICE_DTS_CONFIG := config@12
 | 
			
		||||
	KERNEL_INSTALL := 1
 | 
			
		||||
	BLOCKSIZE := 128k
 | 
			
		||||
	PAGESIZE := 2048
 | 
			
		||||
	FILESYSTEMS := squashfs
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += compex_wpj419
 | 
			
		||||
 | 
			
		||||
define Device/compex_wpj428
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	DEVICE_VENDOR := Compex
 | 
			
		||||
	DEVICE_MODEL := WPJ428
 | 
			
		||||
	SOC := qcom-ipq4028
 | 
			
		||||
	DEVICE_DTS_CONFIG := config@4
 | 
			
		||||
	BLOCKSIZE := 64k
 | 
			
		||||
	IMAGE_SIZE := 31232k
 | 
			
		||||
	KERNEL_SIZE := 4096k
 | 
			
		||||
	IMAGES += cpximg-6a04.bin
 | 
			
		||||
	IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
 | 
			
		||||
	IMAGE/cpximg-6a04.bin := append-kernel | append-rootfs | pad-rootfs | mkmylofw_32m 0x8A2 3
 | 
			
		||||
	DEVICE_PACKAGES := kmod-gpio-beeper
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += compex_wpj428
 | 
			
		||||
 | 
			
		||||
define Device/dlink_dap-2610
 | 
			
		||||
	$(call Device/FitImageLzma)
 | 
			
		||||
	DEVICE_VENDOR := D-Link
 | 
			
		||||
	DEVICE_MODEL := DAP-2610
 | 
			
		||||
	SOC := qcom-ipq4018
 | 
			
		||||
	DEVICE_DTS_CONFIG := config@ap.dk01.1-c1
 | 
			
		||||
	BLOCKSIZE := 64k
 | 
			
		||||
	WRGG_DEVNAME := /dev/mtdblock/8
 | 
			
		||||
	WRGG_SIGNATURE := wapac30_dkbs_dap2610
 | 
			
		||||
	IMAGE_SIZE := 14080k
 | 
			
		||||
	IMAGES += factory.bin
 | 
			
		||||
	# Bootloader expects a special 160 byte header which is added by
 | 
			
		||||
	# wrgg-image.
 | 
			
		||||
	# Factory image size must be larger than 6MB, and size in wrgg header must
 | 
			
		||||
	# match actual factory image size to be flashable from D-Link http server.
 | 
			
		||||
	# Bootloader verifies checksum of wrgg image before booting, thus jffs2
 | 
			
		||||
	# cannot be part of the wrgg image. This is solved in the factory image by
 | 
			
		||||
	# having the rootfs at the end of the image (without pad-rootfs). And in
 | 
			
		||||
	# the sysupgrade image only the kernel is included in the wrgg checksum,
 | 
			
		||||
	# but this is not flashable from the D-link http server.
 | 
			
		||||
	# append-rootfs must start on an erase block boundary.
 | 
			
		||||
	IMAGE/factory.bin    := append-kernel | pad-offset 6144k 160 | append-rootfs | wrgg-image | check-size
 | 
			
		||||
	IMAGE/sysupgrade.bin := append-kernel | wrgg-image | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size | append-metadata
 | 
			
		||||
	DEVICE_PACKAGES := ipq-wifi-dlink_dap2610
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += dlink_dap-2610
 | 
			
		||||
 | 
			
		||||
define Device/engenius_eap1300
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	DEVICE_VENDOR := EnGenius
 | 
			
		||||
	DEVICE_MODEL := EAP1300
 | 
			
		||||
	DEVICE_DTS_CONFIG := config@4
 | 
			
		||||
	BOARD_NAME := eap1300
 | 
			
		||||
	SOC := qcom-ipq4018
 | 
			
		||||
	KERNEL_SIZE := 5120k
 | 
			
		||||
	IMAGE_SIZE := 25344k
 | 
			
		||||
	IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += engenius_eap1300
 | 
			
		||||
 | 
			
		||||
define Device/engenius_eap2200
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	$(call Device/UbiFit)
 | 
			
		||||
	DEVICE_VENDOR := EnGenius
 | 
			
		||||
	DEVICE_MODEL := EAP2200
 | 
			
		||||
	SOC := qcom-ipq4019
 | 
			
		||||
	BLOCKSIZE := 128k
 | 
			
		||||
	PAGESIZE := 2048
 | 
			
		||||
	DEVICE_PACKAGES := ath10k-firmware-qca9888-ct ipq-wifi-engenius_eap2200 -kmod-ath10k-ct kmod-ath10k-ct-smallbuffers
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += engenius_eap2200
 | 
			
		||||
 | 
			
		||||
define Device/engenius_emd1
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	DEVICE_VENDOR := EnGenius
 | 
			
		||||
	DEVICE_MODEL := EMD1
 | 
			
		||||
	DEVICE_DTS_CONFIG := config@4
 | 
			
		||||
	SOC := qcom-ipq4018
 | 
			
		||||
	IMAGE_SIZE := 30720k
 | 
			
		||||
	IMAGES += factory.bin
 | 
			
		||||
	IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
 | 
			
		||||
	IMAGE/factory.bin := qsdk-ipq-factory-nor | check-size
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += engenius_emd1
 | 
			
		||||
 | 
			
		||||
define Device/engenius_emr3500
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	DEVICE_VENDOR := EnGenius
 | 
			
		||||
	DEVICE_MODEL := EMR3500
 | 
			
		||||
	DEVICE_DTS_CONFIG := config@4
 | 
			
		||||
	SOC := qcom-ipq4018
 | 
			
		||||
	KERNEL_SIZE := 4096k
 | 
			
		||||
	IMAGE_SIZE := 30720k
 | 
			
		||||
	IMAGES += factory.bin
 | 
			
		||||
	IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
 | 
			
		||||
	IMAGE/factory.bin := qsdk-ipq-factory-nor | check-size
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += engenius_emr3500
 | 
			
		||||
 | 
			
		||||
define Device/engenius_ens620ext
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	DEVICE_VENDOR := EnGenius
 | 
			
		||||
	DEVICE_MODEL := ENS620EXT
 | 
			
		||||
	SOC := qcom-ipq4018
 | 
			
		||||
	DEVICE_DTS_CONFIG := config@4
 | 
			
		||||
	BLOCKSIZE := 64k
 | 
			
		||||
	PAGESIZE := 256
 | 
			
		||||
	BOARD_NAME := ENS620EXT
 | 
			
		||||
	VENDOR_ID := 0x0101
 | 
			
		||||
	PRODUCT_ID := 0x79
 | 
			
		||||
	PRODUCT_ID_NEW := 0xA4
 | 
			
		||||
	DATECODE := 190507
 | 
			
		||||
	FW_VER := 3.1.2
 | 
			
		||||
	FW_VER_NEW := 3.5.6
 | 
			
		||||
	CW_VER := 1.8.99
 | 
			
		||||
	IMAGE_SIZE := 21312k
 | 
			
		||||
	KERNEL_SIZE := 5120k
 | 
			
		||||
	FILESYSTEMS := squashfs
 | 
			
		||||
	IMAGES += factory_30.bin factory_35.bin
 | 
			
		||||
	IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | check-size | append-metadata
 | 
			
		||||
	IMAGE/factory_30.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-rootfs | pad-rootfs | check-size | SenaoFW $$$$(PRODUCT_ID) $$$$(FW_VER)
 | 
			
		||||
	IMAGE/factory_35.bin := qsdk-ipq-factory-nor | check-size | SenaoFW $$$$(PRODUCT_ID_NEW) $$$$(FW_VER_NEW)
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += engenius_ens620ext
 | 
			
		||||
 | 
			
		||||
define Device/ezviz_cs-w3-wd1200g-eup
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	DEVICE_VENDOR := EZVIZ
 | 
			
		||||
	DEVICE_MODEL := CS-W3-WD1200G
 | 
			
		||||
	DEVICE_VARIANT := EUP
 | 
			
		||||
	DEVICE_DTS_CONFIG := config@4
 | 
			
		||||
	IMAGE_SIZE := 14848k
 | 
			
		||||
	SOC := qcom-ipq4018
 | 
			
		||||
	IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | \
 | 
			
		||||
		append-metadata
 | 
			
		||||
	DEVICE_PACKAGES := -kmod-ath10k-ct kmod-ath10k-ct-smallbuffers \
 | 
			
		||||
		ipq-wifi-ezviz_cs-w3-wd1200g-eup
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += ezviz_cs-w3-wd1200g-eup
 | 
			
		||||
 | 
			
		||||
define Device/glinet_gl-b1300
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	DEVICE_VENDOR := GL.iNet
 | 
			
		||||
	DEVICE_MODEL := GL-B1300
 | 
			
		||||
	BOARD_NAME := gl-b1300
 | 
			
		||||
	SOC := qcom-ipq4029
 | 
			
		||||
	KERNEL_SIZE := 4096k
 | 
			
		||||
	IMAGE_SIZE := 26624k
 | 
			
		||||
	IMAGE/sysupgrade.bin := append-kernel |append-rootfs | pad-rootfs | append-metadata
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += glinet_gl-b1300
 | 
			
		||||
 | 
			
		||||
define Device/glinet_gl-s1300
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	DEVICE_VENDOR := GL.iNet
 | 
			
		||||
	DEVICE_MODEL := GL-S1300
 | 
			
		||||
	SOC := qcom-ipq4029
 | 
			
		||||
	KERNEL_SIZE := 4096k
 | 
			
		||||
	IMAGE_SIZE := 26624k
 | 
			
		||||
	IMAGES := sysupgrade.bin
 | 
			
		||||
	IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
 | 
			
		||||
	DEVICE_PACKAGES := ipq-wifi-glinet_gl-s1300 kmod-fs-ext4 kmod-mmc kmod-spi-dev
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += glinet_gl-s1300
 | 
			
		||||
 | 
			
		||||
define Device/linksys_ea6350v3
 | 
			
		||||
	# The Linksys EA6350v3 has a uboot bootloader that does not
 | 
			
		||||
	# support either booting lzma kernel images nor booting UBI
 | 
			
		||||
	# partitions. This uboot, however, supports raw kernel images and
 | 
			
		||||
	# gzipped images.
 | 
			
		||||
	#
 | 
			
		||||
	# As for the time of writing this, the device will boot the kernel
 | 
			
		||||
	# from a fixed address with a fixed length of 3MiB. Also, the
 | 
			
		||||
	# device has a hard-coded kernel command line that requieres the
 | 
			
		||||
	# rootfs and alt_rootfs to be in mtd11 and mtd13 respectively.
 | 
			
		||||
	# Oh... and the kernel partition overlaps with the rootfs
 | 
			
		||||
	# partition (the same for alt_kernel and alt_rootfs).
 | 
			
		||||
	#
 | 
			
		||||
	# If you are planing re-partitioning the device, you may want to
 | 
			
		||||
	# keep those details in mind:
 | 
			
		||||
	# 1. The kernel adresses you should honor are 0x00000000 and
 | 
			
		||||
	#    0x02800000 respectively.
 | 
			
		||||
	# 2. The kernel size (plus the dtb) cannot exceed 3.00MiB in size.
 | 
			
		||||
	# 3. You can use 'zImage', but not a raw 'Image' packed with lzma.
 | 
			
		||||
	# 4. The kernel command line from uboot is harcoded to boot with
 | 
			
		||||
	#    rootfs either in mtd11 or mtd13.
 | 
			
		||||
	$(call Device/FitzImage)
 | 
			
		||||
	DEVICE_VENDOR := Linksys
 | 
			
		||||
	DEVICE_MODEL := EA6350
 | 
			
		||||
	DEVICE_VARIANT := v3
 | 
			
		||||
	SOC := qcom-ipq4018
 | 
			
		||||
	BLOCKSIZE := 128k
 | 
			
		||||
	PAGESIZE := 2048
 | 
			
		||||
	KERNEL_SIZE := 3072k
 | 
			
		||||
	IMAGE_SIZE := 37888k
 | 
			
		||||
	UBINIZE_OPTS := -E 5
 | 
			
		||||
	IMAGES += factory.bin
 | 
			
		||||
	IMAGE/factory.bin := append-kernel | append-uImage-fakehdr filesystem | pad-to $$$$(KERNEL_SIZE) | append-ubi | linksys-image type=EA6350v3
 | 
			
		||||
	DEVICE_PACKAGES := uboot-envtools
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += linksys_ea6350v3
 | 
			
		||||
 | 
			
		||||
define Device/linksys_ea8300
 | 
			
		||||
	$(call Device/FitzImage)
 | 
			
		||||
	DEVICE_VENDOR := Linksys
 | 
			
		||||
	DEVICE_MODEL := EA8300
 | 
			
		||||
	SOC := qcom-ipq4019
 | 
			
		||||
	KERNEL_SIZE := 3072k
 | 
			
		||||
	IMAGE_SIZE := 87040k
 | 
			
		||||
	BLOCKSIZE := 128k
 | 
			
		||||
	PAGESIZE := 2048
 | 
			
		||||
	UBINIZE_OPTS := -E 5    # EOD marks to "hide" factory sig at EOF
 | 
			
		||||
	IMAGES += factory.bin
 | 
			
		||||
	IMAGE/factory.bin  := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | linksys-image type=EA8300
 | 
			
		||||
	DEVICE_PACKAGES := uboot-envtools ath10k-firmware-qca9888-ct ipq-wifi-linksys_ea8300 kmod-usb-ledtrig-usbport
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += linksys_ea8300
 | 
			
		||||
 | 
			
		||||
define Device/meraki_mr33
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	DEVICE_VENDOR := Cisco Meraki
 | 
			
		||||
	DEVICE_MODEL := MR33
 | 
			
		||||
	SOC := qcom-ipq4029
 | 
			
		||||
	BLOCKSIZE := 128k
 | 
			
		||||
	PAGESIZE := 2048
 | 
			
		||||
	DEVICE_PACKAGES := -swconfig ath10k-firmware-qca9887-ct
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += meraki_mr33
 | 
			
		||||
 | 
			
		||||
define Device/mobipromo_cm520-79f
 | 
			
		||||
	$(call Device/FitzImage)
 | 
			
		||||
	$(call Device/UbiFit)
 | 
			
		||||
	DEVICE_VENDOR := MobiPromo
 | 
			
		||||
	DEVICE_MODEL := CM520-79F
 | 
			
		||||
	SOC := qcom-ipq4019
 | 
			
		||||
	BLOCKSIZE := 128k
 | 
			
		||||
	PAGESIZE := 2048
 | 
			
		||||
	DEVICE_PACKAGES := ipq-wifi-mobipromo_cm520-79f kmod-usb-ledtrig-usbport
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += mobipromo_cm520-79f
 | 
			
		||||
 | 
			
		||||
define Device/netgear_ex61x0v2
 | 
			
		||||
	$(call Device/DniImage)
 | 
			
		||||
	DEVICE_DTS_CONFIG := config@4
 | 
			
		||||
	NETGEAR_BOARD_ID := EX6150v2series
 | 
			
		||||
	NETGEAR_HW_ID := 29765285+16+0+128+2x2
 | 
			
		||||
	IMAGE_SIZE := 14400k
 | 
			
		||||
	SOC := qcom-ipq4018
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
define Device/netgear_ex6100v2
 | 
			
		||||
	$(call Device/netgear_ex61x0v2)
 | 
			
		||||
	DEVICE_VENDOR := Netgear
 | 
			
		||||
	DEVICE_MODEL := EX6100
 | 
			
		||||
	DEVICE_VARIANT := v2
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += netgear_ex6100v2
 | 
			
		||||
 | 
			
		||||
define Device/netgear_ex6150v2
 | 
			
		||||
	$(call Device/netgear_ex61x0v2)
 | 
			
		||||
	DEVICE_VENDOR := Netgear
 | 
			
		||||
	DEVICE_MODEL := EX6150
 | 
			
		||||
	DEVICE_VARIANT := v2
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += netgear_ex6150v2
 | 
			
		||||
 | 
			
		||||
define Device/openmesh_a42
 | 
			
		||||
	$(call Device/FitImageLzma)
 | 
			
		||||
	DEVICE_VENDOR := OpenMesh
 | 
			
		||||
	DEVICE_MODEL := A42
 | 
			
		||||
	SOC := qcom-ipq4018
 | 
			
		||||
	DEVICE_DTS_CONFIG := config@om.a42
 | 
			
		||||
	BLOCKSIZE := 64k
 | 
			
		||||
	KERNEL = kernel-bin | lzma | fit lzma $$(DTS_DIR)/$$(DEVICE_DTS).dtb | pad-to $$(BLOCKSIZE)
 | 
			
		||||
	IMAGE_SIZE := 15616k
 | 
			
		||||
	IMAGES += factory.bin
 | 
			
		||||
	IMAGE/factory.bin := append-rootfs | pad-rootfs | openmesh-image ce_type=A42
 | 
			
		||||
	IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-rootfs | sysupgrade-tar rootfs=$$$$@ | append-metadata
 | 
			
		||||
	DEVICE_PACKAGES := uboot-envtools
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += openmesh_a42
 | 
			
		||||
 | 
			
		||||
define Device/openmesh_a62
 | 
			
		||||
	$(call Device/FitImageLzma)
 | 
			
		||||
	DEVICE_VENDOR := OpenMesh
 | 
			
		||||
	DEVICE_MODEL := A62
 | 
			
		||||
	SOC := qcom-ipq4019
 | 
			
		||||
	DEVICE_DTS_CONFIG := config@om.a62
 | 
			
		||||
	BLOCKSIZE := 64k
 | 
			
		||||
	KERNEL = kernel-bin | lzma | fit lzma $$(DTS_DIR)/$$(DEVICE_DTS).dtb | pad-to $$(BLOCKSIZE)
 | 
			
		||||
	IMAGE_SIZE := 15552k
 | 
			
		||||
	IMAGES += factory.bin
 | 
			
		||||
	IMAGE/factory.bin := append-rootfs | pad-rootfs | openmesh-image ce_type=A62
 | 
			
		||||
	IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-rootfs | sysupgrade-tar rootfs=$$$$@ | append-metadata
 | 
			
		||||
	DEVICE_PACKAGES := ath10k-firmware-qca9888-ct uboot-envtools
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
TARGET_DEVICES += openmesh_a62
 | 
			
		||||
 | 
			
		||||
define Device/qcom_ap-dk01.1-c1
 | 
			
		||||
	DEVICE_VENDOR := Qualcomm Atheros
 | 
			
		||||
	DEVICE_MODEL := AP-DK01.1
 | 
			
		||||
	DEVICE_VARIANT := C1
 | 
			
		||||
	BOARD_NAME := ap-dk01.1-c1
 | 
			
		||||
	SOC := qcom-ipq4019
 | 
			
		||||
	DEVICE_DTS := qcom-ipq4019-ap.dk01.1-c1
 | 
			
		||||
	KERNEL_INSTALL := 1
 | 
			
		||||
	KERNEL_SIZE := 4096k
 | 
			
		||||
	IMAGE_SIZE := 26624k
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-rootfs | pad-rootfs | append-metadata
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += qcom_ap-dk01.1-c1
 | 
			
		||||
 | 
			
		||||
define Device/qcom_ap-dk04.1-c1
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	$(call Device/UbiFit)
 | 
			
		||||
	DEVICE_VENDOR := Qualcomm Atheros
 | 
			
		||||
	DEVICE_MODEL := AP-DK04.1
 | 
			
		||||
	DEVICE_VARIANT := C1
 | 
			
		||||
	SOC := qcom-ipq4019
 | 
			
		||||
	DEVICE_DTS := qcom-ipq4019-ap.dk04.1-c1
 | 
			
		||||
	KERNEL_INSTALL := 1
 | 
			
		||||
	KERNEL_SIZE := 4048k
 | 
			
		||||
	BLOCKSIZE := 128k
 | 
			
		||||
	PAGESIZE := 2048
 | 
			
		||||
	BOARD_NAME := ap-dk04.1-c1
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += qcom_ap-dk04.1-c1
 | 
			
		||||
 | 
			
		||||
define Device/p2w_r619ac
 | 
			
		||||
	$(call Device/FitzImage)
 | 
			
		||||
	$(call Device/UbiFit)
 | 
			
		||||
	DEVICE_VENDOR := P&W
 | 
			
		||||
	DEVICE_MODEL := R619AC
 | 
			
		||||
	SOC := qcom-ipq4019
 | 
			
		||||
	DEVICE_DTS_CONFIG := config@10
 | 
			
		||||
	BLOCKSIZE := 128k
 | 
			
		||||
	PAGESIZE := 2048
 | 
			
		||||
	IMAGES += nand-factory.bin
 | 
			
		||||
	IMAGE/nand-factory.bin := append-ubi | qsdk-ipq-factory-nand
 | 
			
		||||
	DEVICE_PACKAGES := ipq-wifi-p2w_r619ac
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += p2w_r619ac
 | 
			
		||||
 | 
			
		||||
define Device/p2w_r619ac-128m
 | 
			
		||||
	$(call Device/FitzImage)
 | 
			
		||||
	$(call Device/UbiFit)
 | 
			
		||||
	DEVICE_VENDOR := P&W
 | 
			
		||||
	DEVICE_MODEL := R619AC
 | 
			
		||||
	DEVICE_VARIANT := 128M
 | 
			
		||||
	SOC := qcom-ipq4019
 | 
			
		||||
	DEVICE_DTS_CONFIG := config@10
 | 
			
		||||
	BLOCKSIZE := 128k
 | 
			
		||||
	PAGESIZE := 2048
 | 
			
		||||
	DEVICE_PACKAGES := ipq-wifi-p2w_r619ac
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += p2w_r619ac-128m
 | 
			
		||||
 | 
			
		||||
define Device/qxwlan_e2600ac-c1
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	DEVICE_VENDOR := Qxwlan
 | 
			
		||||
	DEVICE_MODEL := E2600AC
 | 
			
		||||
	DEVICE_VARIANT := C1
 | 
			
		||||
	BOARD_NAME := e2600ac-c1
 | 
			
		||||
	SOC := qcom-ipq4019
 | 
			
		||||
	KERNEL_SIZE := 4096k
 | 
			
		||||
	IMAGE_SIZE := 31232k
 | 
			
		||||
	IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
 | 
			
		||||
	DEVICE_PACKAGES := ipq-wifi-qxwlan_e2600ac
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += qxwlan_e2600ac-c1
 | 
			
		||||
 | 
			
		||||
define Device/qxwlan_e2600ac-c2
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	$(call Device/UbiFit)
 | 
			
		||||
	DEVICE_VENDOR := Qxwlan
 | 
			
		||||
	DEVICE_MODEL := E2600AC
 | 
			
		||||
	DEVICE_VARIANT := C2
 | 
			
		||||
	SOC := qcom-ipq4019
 | 
			
		||||
	KERNEL_INSTALL := 1
 | 
			
		||||
	BLOCKSIZE := 128k
 | 
			
		||||
	PAGESIZE := 2048
 | 
			
		||||
	DEVICE_PACKAGES := ipq-wifi-qxwlan_e2600ac
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += qxwlan_e2600ac-c2
 | 
			
		||||
 | 
			
		||||
define Device/unielec_u4019-32m
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	DEVICE_VENDOR := Unielec
 | 
			
		||||
	DEVICE_MODEL := U4019
 | 
			
		||||
	DEVICE_VARIANT := 32M
 | 
			
		||||
	BOARD_NAME := u4019-32m
 | 
			
		||||
	SOC := qcom-ipq4019
 | 
			
		||||
	KERNEL_SIZE := 4096k
 | 
			
		||||
	IMAGE_SIZE := 31232k
 | 
			
		||||
	IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += unielec_u4019-32m
 | 
			
		||||
 | 
			
		||||
define Device/zyxel_nbg6617
 | 
			
		||||
	$(call Device/FitImageLzma)
 | 
			
		||||
	DEVICE_VENDOR := ZyXEL
 | 
			
		||||
	DEVICE_MODEL := NBG6617
 | 
			
		||||
	SOC := qcom-ipq4018
 | 
			
		||||
	KERNEL_SIZE := 4096k
 | 
			
		||||
	ROOTFS_SIZE := 24960k
 | 
			
		||||
	RAS_BOARD := NBG6617
 | 
			
		||||
	RAS_ROOTFS_SIZE := 19840k
 | 
			
		||||
	RAS_VERSION := "$(VERSION_DIST) $(REVISION)"
 | 
			
		||||
	IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
 | 
			
		||||
	IMAGES += factory.bin
 | 
			
		||||
#	The ZyXEL firmware allows flashing thru the web-gui only when the rootfs is
 | 
			
		||||
#	at least as large as the one of the initial firmware image (not the current
 | 
			
		||||
#	one on the device). This only applies to the Web-UI, the bootlaoder ignores
 | 
			
		||||
#	this minimum-size. However, the larger image can be flashed both ways.
 | 
			
		||||
	IMAGE/factory.bin := append-rootfs | pad-rootfs | pad-to 64k | check-size $$$$(ROOTFS_SIZE) | zyxel-ras-image separate-kernel
 | 
			
		||||
	IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-rootfs | check-size $$$$(ROOTFS_SIZE) | sysupgrade-tar rootfs=$$$$@ | append-metadata
 | 
			
		||||
	DEVICE_PACKAGES := uboot-envtools kmod-usb-ledtrig-usbport
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += zyxel_nbg6617
 | 
			
		||||
 | 
			
		||||
define Device/zyxel_wre6606
 | 
			
		||||
	$(call Device/FitImage)
 | 
			
		||||
	DEVICE_VENDOR := ZyXEL
 | 
			
		||||
	DEVICE_MODEL := WRE6606
 | 
			
		||||
	DEVICE_DTS_CONFIG := config@4
 | 
			
		||||
	SOC := qcom-ipq4018
 | 
			
		||||
	IMAGE_SIZE := 13184k
 | 
			
		||||
	IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size
 | 
			
		||||
	DEVICE_PACKAGES := -kmod-ath10k-ct kmod-ath10k-ct-smallbuffers
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += zyxel_wre6606
 | 
			
		||||
 | 
			
		||||
$(eval $(call BuildImage))
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,65 @@
 | 
			
		|||
From a10fab12a927e60b7141a602e740d70cb4d09e4a Mon Sep 17 00:00:00 2001
 | 
			
		||||
From: John Crispin <john@phrozen.org>
 | 
			
		||||
Date: Thu, 9 Mar 2017 11:03:18 +0100
 | 
			
		||||
Subject: [PATCH] arm: boot: add dts files
 | 
			
		||||
 | 
			
		||||
Signed-off-by: John Crispin <john@phrozen.org>
 | 
			
		||||
---
 | 
			
		||||
 arch/arm/boot/dts/Makefile | 23 +++++++++++++++++++++++
 | 
			
		||||
 1 file changed, 23 insertions(+)
 | 
			
		||||
 | 
			
		||||
--- a/arch/arm/boot/dts/Makefile
 | 
			
		||||
+++ b/arch/arm/boot/dts/Makefile
 | 
			
		||||
@@ -837,11 +837,52 @@ dtb-$(CONFIG_ARCH_QCOM) += \
 | 
			
		||||
 	qcom-apq8074-dragonboard.dtb \
 | 
			
		||||
 	qcom-apq8084-ifc6540.dtb \
 | 
			
		||||
 	qcom-apq8084-mtp.dtb \
 | 
			
		||||
+	qcom-ipq4018-a42.dtb \
 | 
			
		||||
+	qcom-ipq4018-ap120c-ac.dtb \
 | 
			
		||||
+	qcom-ipq4018-dap-2610.dtb \
 | 
			
		||||
+	qcom-ipq4018-cs-w3-wd1200g-eup.dtb \
 | 
			
		||||
+	qcom-ipq4018-ea6350v3.dtb \
 | 
			
		||||
+	qcom-ipq4018-eap1300.dtb \
 | 
			
		||||
+	qcom-ipq4018-emd1.dtb \
 | 
			
		||||
+	qcom-ipq4018-emr3500.dtb \
 | 
			
		||||
+	qcom-ipq4018-ens620ext.dtb \
 | 
			
		||||
+	qcom-ipq4018-ex6100v2.dtb \
 | 
			
		||||
+	qcom-ipq4018-ex6150v2.dtb \
 | 
			
		||||
+	qcom-ipq4018-fritzbox-4040.dtb \
 | 
			
		||||
+	qcom-ipq4018-jalapeno.dtb \
 | 
			
		||||
+	qcom-ipq4018-meshpoint-one.dtb \
 | 
			
		||||
+	qcom-ipq4018-nbg6617.dtb \
 | 
			
		||||
+	qcom-ipq4018-rt-ac58u.dtb \
 | 
			
		||||
+	qcom-ipq4018-wre6606.dtb \
 | 
			
		||||
 	qcom-ipq4019-ap.dk01.1-c1.dtb \
 | 
			
		||||
 	qcom-ipq4019-ap.dk04.1-c1.dtb \
 | 
			
		||||
 	qcom-ipq4019-ap.dk04.1-c3.dtb \
 | 
			
		||||
 	qcom-ipq4019-ap.dk07.1-c1.dtb \
 | 
			
		||||
 	qcom-ipq4019-ap.dk07.1-c2.dtb \
 | 
			
		||||
+	qcom-ipq4019-a62.dtb \
 | 
			
		||||
+	qcom-ipq4019-cm520-79f.dtb \
 | 
			
		||||
+	qcom-ipq4019-ea8300.dtb \
 | 
			
		||||
+	qcom-ipq4019-eap2200.dtb \
 | 
			
		||||
+	qcom-ipq4019-fritzbox-7530.dtb \
 | 
			
		||||
+	qcom-ipq4019-fritzrepeater-1200.dtb \
 | 
			
		||||
+	qcom-ipq4019-fritzrepeater-3000.dtb \
 | 
			
		||||
+	qcom-ipq4019-r619ac.dtb \
 | 
			
		||||
+	qcom-ipq4019-r619ac-128m.dtb \
 | 
			
		||||
+	qcom-ipq4019-map-ac2200.dtb \
 | 
			
		||||
+	qcom-ipq4019-e2600ac-c1.dtb \
 | 
			
		||||
+	qcom-ipq4019-e2600ac-c2.dtb \
 | 
			
		||||
+	qcom-ipq4019-habanero-dvk.dtb \
 | 
			
		||||
+	qcom-ipq4019-rtl30vw.dtb \
 | 
			
		||||
+	qcom-ipq4019-u4019-32m.dtb \
 | 
			
		||||
+	qcom-ipq4019-wpj419.dtb \
 | 
			
		||||
+	qcom-ipq4019-wtr-m2133hp.dtb \
 | 
			
		||||
+	qcom-ipq4028-wpj428.dtb \
 | 
			
		||||
+	qcom-ipq4029-ap-303.dtb \
 | 
			
		||||
+	qcom-ipq4029-ap-303h.dtb \
 | 
			
		||||
+	qcom-ipq4029-ap-365.dtb \
 | 
			
		||||
+	qcom-ipq4029-gl-b1300.dtb \
 | 
			
		||||
+	qcom-ipq4029-gl-s1300.dtb \
 | 
			
		||||
+	qcom-ipq4029-mr33.dtb \
 | 
			
		||||
 	qcom-ipq8064-ap148.dtb \
 | 
			
		||||
 	qcom-msm8660-surf.dtb \
 | 
			
		||||
 	qcom-msm8960-cdp.dtb \
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue