treewide: uniform vendor name for ASUS
[openwrt/staging/wigyori.git] / target / linux / bcm4908 / image / Makefile
index f5db38915de32a5d29c3de66a790345dfd945e34..658ec810d1b31fdc04faa9d26e41b97fbd04a525 100644 (file)
@@ -3,8 +3,43 @@
 include $(TOPDIR)/rules.mk
 include $(INCLUDE_DIR)/image.mk
 
-define Build/bcm4908lzma
-       $(STAGING_DIR_HOST)/bin/lzma e -lc1 -lp2 -pb2 -d22 $@ $@.new
+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 > $@.tmp
+       mv $@.tmp $@
+       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 $@-bootfs.jffs2 -d $@-bootfs -m none -n
+       $(STAGING_DIR_HOST)/bin/bcm4908img create $@.new -f $@-bootfs.jffs2 \
+               -a 0x20000 -f $@
        mv $@.new $@
 endef
 
@@ -13,6 +48,19 @@ define Build/bcm4908kernel
        mv $@.new $@
 endef
 
+define Build/bcm4908lzma
+       $(STAGING_DIR_HOST)/bin/lzma e -lc1 -lp2 -pb2 -d22 $@ $@.new
+       mv $@.new $@
+endef
+
+define Build/pkgtb
+       mv $@ $@.rootfs
+       cp pkgtb-$(SOC).its $@.its
+       sed -i "s=\$${bootfs}=$(KDIR)/bootfs-$(SOC).itb=" $@.its
+       sed -i "s=\$${rootfs}=$@.rootfs=" $@.its
+       PATH=$(LINUX_DIR)/scripts/dtc:$(PATH) mkimage -f $@.its $@
+endef
+
 define Device/Default
   KERNEL := kernel-bin | bcm4908lzma | bcm4908kernel
   KERNEL_DEPENDS = $$(wildcard $(DTS_DIR)/$$(DEVICE_DTS).dts)
@@ -20,25 +68,71 @@ define Device/Default
   KERNEL_INITRAMFS := kernel-bin | bcm4908lzma | bcm4908kernel
   FILESYSTEMS := squashfs
   KERNEL_NAME := Image
-  IMAGE_NAME = $$(IMAGE_PREFIX)-$$(1).$$(2)
+  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_VENDOR := ASUS
   DEVICE_MODEL := GT-AC5300
-  DEVICE_DTS := broadcom/bcm4908/bcm4908-asus-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/bcm4908/bcm4906-netgear-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))