apm821xx: Add support for the Cisco Meraki MX60/MX60W
[openwrt/openwrt.git] / target / linux / apm821xx / image / Makefile
index fb1705e93abe877d5a6e7a0ebaed526319810048..48eef643e148d661351db1b94cf89e5b2a7a52de 100644 (file)
@@ -80,9 +80,42 @@ define Device/mr24
                      MerakiAdd-dtb | pad-to 2047k | MerakiAdd-initramfs | \
                      MerakiNAND
   IMAGE/sysupgrade.tar := sysupgrade-tar
+  UBINIZE_OPTS := -E 5
 endef
 TARGET_DEVICES += mr24
 
+define Device/mx60
+  DEVICE_TITLE := Cisco Meraki MX60
+  DEVICE_PACKAGES := kmod-spi-gpio swconfig kmod-usb-ledtrig-usbport \
+       kmod-usb-dwc2 kmod-usb-storage block-mount
+  DEVICE_PROFILE := MX60
+  DEVICE_DTS := MX60
+  BLOCKSIZE := 63k
+  IMAGES := sysupgrade.tar
+  DTB_SIZE := 64512
+  # The kernel size will need to match the offset defined in mkmerakifw.c,
+  # otherwise the final image will fail to boot. This is set within the
+  # MX60 kernel header definition which is found at
+  # ./tools/firmware-utils/src/mkmerakifw.c, line 103~
+  KERNEL_SIZE := 2984k
+  IMAGE_SIZE := 1021m
+  KERNEL := kernel-bin | gzip | uImage gzip | MerakiAdd-dtb | MerakiNAND
+  KERNEL_INITRAMFS := copy-file $(KDIR)/vmlinux | gzip | uImage gzip | \
+                     check-size $$(KERNEL_SIZE) | \
+                     MerakiAdd-dtb | pad-to 2047k | MerakiAdd-initramfs | \
+                     MerakiNAND
+  IMAGE/sysupgrade.tar := sysupgrade-tar
+  UBINIZE_OPTS := -E 5
+endef
+TARGET_DEVICES += mx60
+
+define Device/mx60w
+$(Device/mx60)
+  DEVICE_TITLE := Cisco Meraki MX60W
+  DEVICE_PACKAGES += kmod-ath9k wpad-mini
+endef
+TARGET_DEVICES += mx60w
+
 define Build/create-uImage-dtb
        # flat_dt target expect FIT image - which WNDR4700's uboot doesn't support
        -$(STAGING_DIR_HOST)/bin/mkimage -A $(LINUX_KARCH) \
@@ -141,7 +174,7 @@ endef
 define Device/WNDR4700
   DEVICE_TITLE := Netgear Centria N900 WNDR4700/WNDR4720
   DEVICE_PACKAGES := badblocks block-mount e2fsprogs \
-       kmod-ath9k kmod-dm kmod-fs-ext4 kmod-fs-vfat kmod-ledtrig-usbdev \
+       kmod-ath9k kmod-dm kmod-fs-ext4 kmod-fs-vfat kmod-usb-ledtrig-usbport \
        kmod-md-mod kmod-nls-cp437 kmod-nls-iso8859-1 kmod-nls-iso8859-15 \
        kmod-nls-utf8 kmod-usb3 kmod-usb-dwc2 kmod-usb-storage \
        partx-utils swconfig wpad-mini
@@ -162,6 +195,7 @@ define Device/WNDR4700
   IMAGE/sysupgrade.tar := sysupgrade-tar
   NETGEAR_BOARD_ID := WNDR4700
   NETGEAR_HW_ID := 29763875+128+256
+  UBINIZE_OPTS := -E 5
 endef
 TARGET_DEVICES += WNDR4700
 
@@ -226,7 +260,7 @@ TARGET_DEVICES += MyBookLiveSingle
 define Device/MyBookLiveDuo
 $(Device/MyBookLiveDefault)
   DEVICE_TITLE := Western Digital My Book Live Duo
-  DEVICE_PACKAGES := kmod-usb-dwc2 kmod-ledtrig-usbdev kmod-usb-storage kmod-fs-vfat wpad-mini
+  DEVICE_PACKAGES := kmod-usb-dwc2 kmod-usb-ledtrig-usbport kmod-usb-storage kmod-fs-vfat wpad-mini
   DEVICE_DTS := apollo3g-duo
   DEVICE_PROFILE := ap2nc
 endef