[LEDE-DEV] [PATCH 1/2] mvebu: add subtarget for cortex A9 build
Tomasz Maciej Nowak
tomek_n at o2.pl
Wed Mar 7 13:10:01 PST 2018
From: Hauke Mehrtens <hauke at hauke-m.de>
This is in preparation for adding a subtarget for the Cortex A53 later.
Signed-off-by: Hauke Mehrtens <hauke at hauke-m.de>
---
package/boot/uboot-mvebu/Makefile | 1 +
target/linux/mvebu/Makefile | 6 +-
target/linux/mvebu/cortexa9/target.mk | 14 ++++
target/linux/mvebu/image/Makefile | 137 +------------------------------
target/linux/mvebu/image/cortex-a9.mk | 148 ++++++++++++++++++++++++++++++++++
5 files changed, 165 insertions(+), 141 deletions(-)
create mode 100644 target/linux/mvebu/cortexa9/target.mk
create mode 100644 target/linux/mvebu/image/cortex-a9.mk
diff --git a/package/boot/uboot-mvebu/Makefile b/package/boot/uboot-mvebu/Makefile
index 2c280faa21..53abcafda0 100644
--- a/package/boot/uboot-mvebu/Makefile
+++ b/package/boot/uboot-mvebu/Makefile
@@ -24,6 +24,7 @@ endef
define U-Boot/clearfog
NAME:=SolidRun ClearFog A1
BUILD_DEVICES:=armada-388-clearfog-base armada-388-clearfog-pro
+ BUILD_SUBTARGET:=cortexa9
UBOOT_IMAGE:=u-boot-spl.kwb
endef
diff --git a/target/linux/mvebu/Makefile b/target/linux/mvebu/Makefile
index 6f0c1925c2..490583fb39 100644
--- a/target/linux/mvebu/Makefile
+++ b/target/linux/mvebu/Makefile
@@ -6,20 +6,16 @@
#
include $(TOPDIR)/rules.mk
-ARCH:=arm
BOARD:=mvebu
BOARDNAME:=Marvell Armada 37x/38x/XP
FEATURES:=fpu usb pci pcie gpio nand squashfs
-CPU_TYPE:=cortex-a9
-CPU_SUBTYPE:=vfpv3
+SUBTARGETS:=cortexa9
MAINTAINER:=Imre Kaloz <kaloz at openwrt.org>
KERNEL_PATCHVER:=4.14
include $(INCLUDE_DIR)/target.mk
-KERNELNAME:=zImage dtbs
-
DEFAULT_PACKAGES += uboot-envtools kmod-gpio-button-hotplug
$(eval $(call BuildTarget))
diff --git a/target/linux/mvebu/cortexa9/target.mk b/target/linux/mvebu/cortexa9/target.mk
new file mode 100644
index 0000000000..2a75599bc9
--- /dev/null
+++ b/target/linux/mvebu/cortexa9/target.mk
@@ -0,0 +1,14 @@
+#
+# Copyright (C) 2017 Hauke Mehrtens
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+ARCH:=arm
+BOARDNAME:=Marvell Armada 37x/38x/XP
+CPU_TYPE:=cortex-a9
+CPU_SUBTYPE:=vfpv3
+KERNELNAME:=zImage dtbs
diff --git a/target/linux/mvebu/image/Makefile b/target/linux/mvebu/image/Makefile
index 68adfc3ddd..1ed9c39f00 100644
--- a/target/linux/mvebu/image/Makefile
+++ b/target/linux/mvebu/image/Makefile
@@ -89,141 +89,6 @@ define Device/NAND-512K
PAGESIZE := 4096
endef
-define Device/linksys
- DEVICE_TITLE := Linksys $(1)
- DEVICE_PACKAGES := kmod-mwlwifi wpad-mini swconfig
-endef
-
-define Device/armada-385-linksys
- $(Device/NAND-128K)
- $(Device/UBI-factory)
- KERNEL_SIZE := 6144k
-endef
-
-define Device/linksys-wrt1200ac
- $(call Device/linksys,WRT1200AC (Caiman))
- $(Device/armada-385-linksys)
- DEVICE_DTS := armada-385-linksys-caiman
- DEVICE_PACKAGES += mwlwifi-firmware-88w8864
-endef
-TARGET_DEVICES += linksys-wrt1200ac
-
-define Device/linksys-wrt1900acv2
- $(call Device/linksys,WRT1900ACv2 (Cobra))
- $(Device/armada-385-linksys)
- DEVICE_DTS := armada-385-linksys-cobra
- DEVICE_PACKAGES += mwlwifi-firmware-88w8864
-endef
-TARGET_DEVICES += linksys-wrt1900acv2
-
-define Device/linksys-wrt3200acm
- $(call Device/linksys,WRT3200ACM (Rango))
- $(Device/armada-385-linksys)
- DEVICE_DTS := armada-385-linksys-rango
- DEVICE_PACKAGES += kmod-btmrvl kmod-mwifiex-sdio mwlwifi-firmware-88w8964
-endef
-TARGET_DEVICES += linksys-wrt3200acm
-
-define Device/linksys-wrt1900acs
- $(call Device/linksys,WRT1900ACS (Shelby))
- $(Device/armada-385-linksys)
- DEVICE_DTS := armada-385-linksys-shelby
- DEVICE_PACKAGES += mwlwifi-firmware-88w8864
-endef
-TARGET_DEVICES += linksys-wrt1900acs
-
-define Device/linksys-wrt1900ac
- $(call Device/linksys,WRT1900AC (Mamba))
- DEVICE_DTS := armada-xp-linksys-mamba
- DEVICE_PACKAGES += mwlwifi-firmware-88w8864
- $(Device/NAND-128K)
- $(Device/UBI-factory)
- KERNEL_SIZE := 3072k
-endef
-TARGET_DEVICES += linksys-wrt1900ac
-
-define Device/openblocks-ax3-4
- $(Device/UBI-factory)
- DEVICE_DTS := armada-xp-openblocks-ax3-4
- SUPPORTED_DEVICES := $(1)
- BLOCKSIZE := 128k
- PAGESIZE := 1
- IMAGE/factory.img := append-kernel | pad-to $$(BLOCKSIZE) | append-ubi
- DEVICE_TITLE := Plat'Home OpenBlocks AX3
-endef
-TARGET_DEVICES += openblocks-ax3-4
-
-define Device/armada-385-db-ap
- $(Device/NAND-256K)
- $(Device/UBI-factory)
- KERNEL_SIZE := 8192k
- DEVICE_TITLE := Marvell Armada 385 DB AP (DB-88F6820-AP)
-endef
-TARGET_DEVICES += armada-385-db-ap
-
-define Device/marvell-nand
- $(Device/NAND-512K)
- DEVICE_TITLE := Marvell Armada $(1)
-endef
-
-define Device/armada-370-db
- $(call Device/marvell-nand,370 DB (DB-88F6710-BP-DDR3))
-endef
-TARGET_DEVICES += armada-370-db
-
-define Device/armada-370-rd
- $(call Device/marvell-nand,370 RD (RD-88F6710-A1))
-endef
-TARGET_DEVICES += armada-370-rd
-
-define Device/armada-xp-db
- $(call Device/marvell-nand,XP DB (DB-78460-BP))
-endef
-TARGET_DEVICES += armada-xp-db
-
-define Device/armada-xp-gp
- $(call Device/marvell-nand,XP GP (DB-MV784MP-GP))
-endef
-TARGET_DEVICES += armada-xp-gp
-
-define Device/armada-388-rd
- DEVICE_TITLE := Marvell Armada 388 RD (RD-88F6820-AP)
- IMAGES := firmware.bin
- IMAGE/firmware.bin := append-kernel | pad-to 256k | append-rootfs | pad-rootfs
-endef
-TARGET_DEVICES += armada-388-rd
-
-define Device/armada-388-clearfog-pro
- KERNEL_INSTALL := 1
- KERNEL := kernel-bin
- DEVICE_TITLE := SolidRun ClearFog Pro
- DEVICE_PACKAGES := mkf2fs e2fsprogs swconfig kmod-fs-vfat kmod-nls-cp437 kmod-nls-iso8859-1
- IMAGES := sdcard.img.gz
- IMAGE/sdcard.img.gz := boot-scr | boot-img | sdcard-img | gzip | append-metadata
- DEVICE_DTS := armada-388-clearfog-pro armada-388-clearfog-base
- SUPPORTED_DEVICES := armada-388-clearfog-pro armada-388-clearfog
- UBOOT := clearfog-u-boot-spl.kwb
-endef
-TARGET_DEVICES += armada-388-clearfog-pro
-
-define Device/armada-388-clearfog-base
- KERNEL_INSTALL := 1
- KERNEL := kernel-bin
- DEVICE_TITLE := SolidRun ClearFog Base
- DEVICE_PACKAGES := mkf2fs e2fsprogs kmod-fs-vfat kmod-nls-cp437 kmod-nls-iso8859-1
- IMAGES := sdcard.img.gz
- IMAGE/sdcard.img.gz := boot-scr | boot-img | sdcard-img | gzip | append-metadata
- DEVICE_DTS := armada-388-clearfog-pro armada-388-clearfog-base
- UBOOT := clearfog-u-boot-spl.kwb
-endef
-TARGET_DEVICES += armada-388-clearfog-base
-
-define Device/globalscale-mirabox
- $(Device/NAND-512K)
- DEVICE_DTS := armada-370-mirabox
- SUPPORTED_DEVICES := mirabox
- DEVICE_TITLE := Globalscale Mirabox
-endef
-TARGET_DEVICES += globalscale-mirabox
+include cortex-a9.mk
$(eval $(call BuildImage))
diff --git a/target/linux/mvebu/image/cortex-a9.mk b/target/linux/mvebu/image/cortex-a9.mk
new file mode 100644
index 0000000000..30e3ad0a0e
--- /dev/null
+++ b/target/linux/mvebu/image/cortex-a9.mk
@@ -0,0 +1,148 @@
+#
+# Copyright (C) 2012-2016 OpenWrt.org
+# Copyright (C) 2016 LEDE-project.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+ifeq ($(SUBTARGET),cortexa9)
+
+define Device/linksys
+ DEVICE_TITLE := Linksys $(1)
+ DEVICE_PACKAGES := kmod-mwlwifi wpad-mini swconfig
+endef
+
+define Device/armada-385-linksys
+ $(Device/NAND-128K)
+ $(Device/UBI-factory)
+ KERNEL_SIZE := 6144k
+endef
+
+define Device/linksys-wrt1200ac
+ $(call Device/linksys,WRT1200AC (Caiman))
+ $(Device/armada-385-linksys)
+ DEVICE_DTS := armada-385-linksys-caiman
+ DEVICE_PACKAGES += mwlwifi-firmware-88w8864
+endef
+TARGET_DEVICES += linksys-wrt1200ac
+
+define Device/linksys-wrt1900acv2
+ $(call Device/linksys,WRT1900ACv2 (Cobra))
+ $(Device/armada-385-linksys)
+ DEVICE_DTS := armada-385-linksys-cobra
+ DEVICE_PACKAGES += mwlwifi-firmware-88w8864
+endef
+TARGET_DEVICES += linksys-wrt1900acv2
+
+define Device/linksys-wrt3200acm
+ $(call Device/linksys,WRT3200ACM (Rango))
+ $(Device/armada-385-linksys)
+ DEVICE_DTS := armada-385-linksys-rango
+ DEVICE_PACKAGES += kmod-btmrvl kmod-mwifiex-sdio mwlwifi-firmware-88w8964
+endef
+TARGET_DEVICES += linksys-wrt3200acm
+
+define Device/linksys-wrt1900acs
+ $(call Device/linksys,WRT1900ACS (Shelby))
+ $(Device/armada-385-linksys)
+ DEVICE_DTS := armada-385-linksys-shelby
+ DEVICE_PACKAGES += mwlwifi-firmware-88w8864
+endef
+TARGET_DEVICES += linksys-wrt1900acs
+
+define Device/linksys-wrt1900ac
+ $(call Device/linksys,WRT1900AC (Mamba))
+ DEVICE_DTS := armada-xp-linksys-mamba
+ DEVICE_PACKAGES += mwlwifi-firmware-88w8864
+ $(Device/NAND-128K)
+ $(Device/UBI-factory)
+ KERNEL_SIZE := 3072k
+endef
+TARGET_DEVICES += linksys-wrt1900ac
+
+define Device/openblocks-ax3-4
+ $(Device/UBI-factory)
+ DEVICE_DTS := armada-xp-openblocks-ax3-4
+ SUPPORTED_DEVICES := $(1)
+ BLOCKSIZE := 128k
+ PAGESIZE := 1
+ IMAGE/factory.img := append-kernel | pad-to $$(BLOCKSIZE) | append-ubi
+ DEVICE_TITLE := Plat'Home OpenBlocks AX3
+endef
+TARGET_DEVICES += openblocks-ax3-4
+
+define Device/armada-385-db-ap
+ $(Device/NAND-256K)
+ $(Device/UBI-factory)
+ KERNEL_SIZE := 8192k
+ DEVICE_TITLE := Marvell Armada 385 DB AP (DB-88F6820-AP)
+endef
+TARGET_DEVICES += armada-385-db-ap
+
+define Device/marvell-nand
+ $(Device/NAND-512K)
+ DEVICE_TITLE := Marvell Armada $(1)
+endef
+
+define Device/armada-370-db
+ $(call Device/marvell-nand,370 DB (DB-88F6710-BP-DDR3))
+endef
+TARGET_DEVICES += armada-370-db
+
+define Device/armada-370-rd
+ $(call Device/marvell-nand,370 RD (RD-88F6710-A1))
+endef
+TARGET_DEVICES += armada-370-rd
+
+define Device/armada-xp-db
+ $(call Device/marvell-nand,XP DB (DB-78460-BP))
+endef
+TARGET_DEVICES += armada-xp-db
+
+define Device/armada-xp-gp
+ $(call Device/marvell-nand,XP GP (DB-MV784MP-GP))
+endef
+TARGET_DEVICES += armada-xp-gp
+
+define Device/armada-388-rd
+ DEVICE_TITLE := Marvell Armada 388 RD (RD-88F6820-AP)
+ IMAGES := firmware.bin
+ IMAGE/firmware.bin := append-kernel | pad-to 256k | append-rootfs | pad-rootfs
+endef
+TARGET_DEVICES += armada-388-rd
+
+define Device/armada-388-clearfog-pro
+ KERNEL_INSTALL := 1
+ KERNEL := kernel-bin
+ DEVICE_TITLE := SolidRun ClearFog Pro
+ DEVICE_PACKAGES := mkf2fs e2fsprogs swconfig kmod-fs-vfat kmod-nls-cp437 kmod-nls-iso8859-1
+ IMAGES := sdcard.img.gz
+ IMAGE/sdcard.img.gz := boot-scr | boot-img | sdcard-img | gzip | append-metadata
+ DEVICE_DTS := armada-388-clearfog-pro armada-388-clearfog-base
+ SUPPORTED_DEVICES := armada-388-clearfog-pro armada-388-clearfog
+ UBOOT := clearfog-u-boot-spl.kwb
+endef
+TARGET_DEVICES += armada-388-clearfog-pro
+
+define Device/armada-388-clearfog-base
+ KERNEL_INSTALL := 1
+ KERNEL := kernel-bin
+ DEVICE_TITLE := SolidRun ClearFog Base
+ DEVICE_PACKAGES := mkf2fs e2fsprogs kmod-fs-vfat kmod-nls-cp437 kmod-nls-iso8859-1
+ IMAGES := sdcard.img.gz
+ IMAGE/sdcard.img.gz := boot-scr | boot-img | sdcard-img | gzip | append-metadata
+ DEVICE_DTS := armada-388-clearfog-pro armada-388-clearfog-base
+ UBOOT := clearfog-u-boot-spl.kwb
+endef
+TARGET_DEVICES += armada-388-clearfog-base
+
+define Device/globalscale-mirabox
+ $(Device/NAND-512K)
+ DEVICE_DTS := armada-370-mirabox
+ SUPPORTED_DEVICES := mirabox
+ DEVICE_TITLE := Globalscale Mirabox
+endef
+TARGET_DEVICES += globalscale-mirabox
+
+endif
--
2.16.2
More information about the Lede-dev
mailing list