123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138 |
- # SPDX-License-Identifier: GPL-2.0-only
- include $(TOPDIR)/rules.mk
- include $(INCLUDE_DIR)/image.mk
- DEVICE_VARS += ASUS_PRODUCTID ASUS_BUILD_NO ASUS_FW_REV ASUS_EXT_NO
- DEVICE_VARS += NETGEAR_BOARD_ID NETGEAR_REGION
- DEVICE_VARS += SOC
- define Image/Prepare
- cp bootfs*.its* $(KDIR)/
- sed -i "s=\$$$${images_dir}=$(STAGING_DIR_IMAGE)=" $(KDIR)/bootfs*.its*
- sed -i "s=\$$$${dts_dir}=$(DTS_DIR)=" $(KDIR)/bootfs*.its*
- endef
- define Build/bootfs
- cat $@ | $(STAGING_DIR_HOST)/bin/lzma e -eos -si -so > [email protected]
- mv [email protected] $@
- sed -i "s=\$${kernel}=$@=" $(KDIR)/bootfs*.its*
- PATH=$(LINUX_DIR)/scripts/dtc:$(PATH) mkimage -f $(KDIR)/bootfs-bcm4908.its $(KDIR)/bootfs-bcm4908.itb
- PATH=$(LINUX_DIR)/scripts/dtc:$(PATH) mkimage -f $(KDIR)/bootfs-bcm4912.its $(KDIR)/bootfs-bcm4912.itb
- endef
- define Build/bcm4908asus
- $(STAGING_DIR_HOST)/bin/bcm4908asus create -i $@ \
- -p $(ASUS_PRODUCTID) -b $(ASUS_BUILD_NO) -f $(ASUS_FW_REV) \
- -e $(ASUS_EXT_NO)
- endef
- define Build/bcm4908img
- rm -fr $@-bootfs
- mkdir -p $@-bootfs
- cp -r $(DEVICE_NAME)/* $@-bootfs/
- touch $@-bootfs/1-openwrt
- cp $(DTS_DIR)/$(firstword $(DEVICE_DTS)).dtb $@-bootfs/94908.dtb
- cp $(KDIR)/bcm63xx-cfe/$(subst _,$(comma),$(DEVICE_NAME))/cferam.000 $@-bootfs/
- cp $(IMAGE_KERNEL) $@-bootfs/vmlinux.lz
- $(STAGING_DIR_HOST)/bin/mkfs.jffs2 --pad=0x800000 --little-endian --squash-uids \
- -v -e 128KiB -o [email protected] -d $@-bootfs -m none -n
- $(STAGING_DIR_HOST)/bin/bcm4908img create [email protected] -f [email protected] \
- -a 0x20000 -f $@
- mv [email protected] $@
- endef
- define Build/bcm4908kernel
- $(STAGING_DIR_HOST)/bin/bcm4908kernel -i $@ -o [email protected]
- mv [email protected] $@
- endef
- define Build/bcm4908lzma
- $(STAGING_DIR_HOST)/bin/lzma e -lc1 -lp2 -pb2 -d22 $@ [email protected]
- mv [email protected] $@
- endef
- define Build/pkgtb
- mv $@ [email protected]
- cp pkgtb-$(SOC).its [email protected]
- sed -i "s=\$${bootfs}=$(KDIR)/bootfs-$(SOC).itb=" [email protected]
- sed -i "s=\$${rootfs}[email protected]=" [email protected]
- PATH=$(LINUX_DIR)/scripts/dtc:$(PATH) mkimage -f [email protected] $@
- endef
- define Device/Default
- KERNEL := kernel-bin | bcm4908lzma | bcm4908kernel
- KERNEL_DEPENDS = $$(wildcard $(DTS_DIR)/$$(DEVICE_DTS).dts)
- KERNEL_INITRAMFS_SUFFIX := .bin
- KERNEL_INITRAMFS := kernel-bin | bcm4908lzma | bcm4908kernel
- FILESYSTEMS := squashfs
- KERNEL_NAME := Image
- DEVICE_IMG_NAME = $$(DEVICE_IMG_PREFIX)-$$(1).$$(2)
- BLOCKSIZE := 128k
- PAGESIZE := 2048
- IMAGE/bin := append-ubi | bcm4908img
- endef
- define Device/asus_gt-ac5300
- DEVICE_VENDOR := ASUS
- DEVICE_MODEL := GT-AC5300
- DEVICE_DTS := broadcom/bcmbca/bcm4908-asus-gt-ac5300
- IMAGES := bin
- IMAGE/bin := append-ubi | bcm4908img | bcm4908asus
- ASUS_PRODUCTID := GT-AC5300
- ASUS_BUILD_NO := 384
- ASUS_FW_REV := 3.0.0.4
- ASUS_EXT_NO := 21140
- endef
- TARGET_DEVICES += asus_gt-ac5300
- define Device/asus_gt-ax6000
- DEVICE_VENDOR := ASUS
- DEVICE_MODEL := GT-AX6000
- DEVICE_DTS := broadcom/bcmbca/bcm4912-asus-gt-ax6000
- IMAGES := pkgtb
- IMAGE/pkgtb := append-rootfs | pkgtb
- SOC := bcm4912
- endef
- # TARGET_DEVICES += asus_gt-ax6000
- define Device/netgear_r8000p
- DEVICE_VENDOR := Netgear
- DEVICE_MODEL := R8000P
- DEVICE_DTS := broadcom/bcmbca/bcm4906-netgear-r8000p
- IMAGES := bin
- IMAGE/chk := append-ubi | bcm4908img | netgear-chk
- NETGEAR_BOARD_ID := U12H359T00_NETGEAR
- NETGEAR_REGION := 1
- endef
- TARGET_DEVICES += netgear_r8000p
- define Device/tplink_archer-c2300-v1
- DEVICE_VENDOR := TP-Link
- DEVICE_MODEL := Archer C2300
- DEVICE_VARIANT := v1
- DEVICE_DTS := broadcom/bcmbca/bcm4906-tplink-archer-c2300-v1
- IMAGES := bin
- IMAGE/bin := append-ubi | bcm4908img
- BROKEN := y
- endef
- TARGET_DEVICES += tplink_archer-c2300-v1
- define Device/netgear
- DEVICE_VENDOR := NETGEAR
- KERNEL := kernel-bin | bootfs
- IMAGES := chk
- IMAGE/chk := append-rootfs | pkgtb | netgear-chk
- NETGEAR_REGION := 1
- endef
- define Device/netgear_raxe500
- DEVICE_MODEL := RAXE500
- $(Device/netgear)
- SOC := bcm4908
- NETGEAR_BOARD_ID := U12H449T00_NETGEAR
- endef
- # TARGET_DEVICES += netgear_raxe500
- $(eval $(call BuildImage))
|