Skip to content

Commit

Permalink
layerscape: split image makefile per subtarget
Browse files Browse the repository at this point in the history
This patch is to split image makefile per subtarget.
The ARMv7 subtarget will be added in the future.
It will be not convinient if only one makefile is used
for several subtargets management and future development.
This patch also dropped 32-bit Traverse LS1043-S since
Traverse only intended to support 64-bit and the 32-bit
compile now had an issue.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
  • Loading branch information
yangbolu1991 authored and hauke committed Sep 22, 2018
1 parent 82dd7f7 commit 0d95eb2
Show file tree
Hide file tree
Showing 3 changed files with 317 additions and 185 deletions.
195 changes: 10 additions & 185 deletions target/linux/layerscape/image/Makefile
Expand Up @@ -23,199 +23,24 @@ define Build/ls-append-dtb
endef

define Build/traverse-fit
./mkits-multiple-config.sh -o $@.its -A $(LINUX_KARCH) -v $(LINUX_VERSION) \
-k $@ -a $(KERNEL_LOADADDR) -e $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
./mkits-multiple-config.sh -o $@.its -A $(LINUX_KARCH) \
-v $(LINUX_VERSION) -k $@ -a $(KERNEL_LOADADDR) \
-e $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
-C gzip -c 1 -c 2 \
-d $(DEVICE_DTS_DIR)/freescale/traverse-ls1043s.dtb -D "Traverse_LS1043S" -n "ls1043s" -a $(FDT_LOADADDR) -c 1 \
-d $(DEVICE_DTS_DIR)/freescale/traverse-ls1043v.dtb -D "Traverse_LS1043V" -n "ls1043v" -a $(FDT_LOADADDR) -c 2
-d $(DEVICE_DTS_DIR)/freescale/traverse-ls1043s.dtb \
-D "Traverse_LS1043S" -n "ls1043s" -a $(FDT_LOADADDR) -c 1 \
-d $(DEVICE_DTS_DIR)/freescale/traverse-ls1043v.dtb \
-D "Traverse_LS1043V" -n "ls1043v" -a $(FDT_LOADADDR) -c 2
PATH=$(LINUX_DIR)/scripts/dtc:$(PATH) mkimage -f $@.its $@.new
@mv -f $@.new $@
endef

define Device/Default
PROFILES = Default
FILESYSTEMS := squashfs
DEVICE_DTS :=
IMAGES = firmware.bin

ifeq ($(SUBTARGET),armv8_64b)
KERNEL := kernel-bin | gzip | uImage gzip
KERNEL_LOADADDR = 0x80080000
KERNEL_ENTRY_POINT = 0x80080000
endif
ifeq ($(SUBTARGET),armv8_32b)
KERNEL := kernel-bin | uImage none
KERNEL_NAME := zImage
KERNEL_LOADADDR = 0x80008000
KERNEL_ENTRY_POINT = 0x80008000
include armv8_64b.mk
endif
FDT_LOADADDR = 0x90000000
endef

define Device/ls1043ardb
DEVICE_TITLE := ls1043ardb-$(SUBTARGET)
DEVICE_PACKAGES += layerscape-rcw-ls1043ardb layerscape-fman-ls1043ardb \
layerscape-ppa-ls1043ardb
ifeq ($(SUBTARGET),armv8_32b)
DEVICE_PACKAGES += u-boot-ls1043ardb-image
endif
DEVICE_DTS = ../../../arm64/boot/dts/freescale/fsl-ls1043a-rdb-sdk
IMAGE/firmware.bin = ls-clean | \
ls-append $(1)-rcw.bin | pad-to 1M | \
ls-append $(1)-uboot.bin | pad-to 3M | \
ls-append $(1)-uboot-env.bin | pad-to 4M | \
ls-append $(1)-ppa.itb | pad-to 9M | \
ls-append $(1)-fman.bin | pad-to 15M | \
ls-append-dtb $$(DEVICE_DTS) | pad-to 16M | \
append-kernel | pad-to 32M | \
append-rootfs | pad-rootfs | check-size 67108865
endef
TARGET_DEVICES += ls1043ardb

define Device/ls1046ardb
DEVICE_TITLE := ls1046ardb-$(SUBTARGET)
DEVICE_PACKAGES += layerscape-rcw-ls1046ardb layerscape-fman-ls1046ardb \
layerscape-ppa-ls1046ardb
ifeq ($(SUBTARGET),armv8_32b)
DEVICE_PACKAGES += u-boot-ls1046ardb-image
endif
DEVICE_DTS = ../../../arm64/boot/dts/freescale/fsl-ls1046a-rdb-sdk
FILESYSTEMS := ubifs
UBIFS_OPTS := -m 1 -e 262016 -c 128
UBINIZE_OPTS := -E 5
BLOCKSIZE := 256KiB
PAGESIZE := 1
IMAGE/firmware.bin = ls-clean | \
ls-append $(1)-rcw.bin | pad-to 1M | \
ls-append $(1)-uboot.bin | pad-to 3M | \
ls-append $(1)-uboot-env.bin | pad-to 4M | \
ls-append $(1)-ppa.itb | pad-to 9M | \
ls-append $(1)-fman.bin | pad-to 15M | \
ls-append-dtb $$(DEVICE_DTS) | pad-to 16M | \
append-kernel | pad-to 32M | \
append-ubi | check-size 67108865
endef
TARGET_DEVICES += ls1046ardb

define Device/ls1012ardb
DEVICE_TITLE := ls1012ardb-$(SUBTARGET)
DEVICE_PACKAGES += layerscape-rcw-ls1012ardb layerscape-ppfe \
layerscape-ppa-ls1012ardb kmod-ppfe
ifeq ($(SUBTARGET),armv8_32b)
DEVICE_PACKAGES += u-boot-ls1012ardb-image
endif
DEVICE_DTS = ../../../arm64/boot/dts/freescale/fsl-ls1012a-rdb
FILESYSTEMS := ubifs
UBIFS_OPTS := -m 1 -e 262016 -c 128
UBINIZE_OPTS := -E 5
BLOCKSIZE := 256KiB
PAGESIZE := 1
IMAGE/firmware.bin = ls-clean | \
ls-append $(1)-rcw.bin | pad-to 1M | \
ls-append $(1)-uboot.bin | pad-to 3M | \
ls-append $(1)-uboot-env.bin | pad-to 4M | \
ls-append $(1)-ppa.itb | pad-to 10M | \
ls-append pfe.itb | pad-to 15M | \
ls-append-dtb $$(DEVICE_DTS) | pad-to 16M | \
append-kernel | pad-to 32M | \
append-ubi | check-size 67108865
endef
TARGET_DEVICES += ls1012ardb

define Device/ls1012afrdm
DEVICE_TITLE := ls1012afrdm-$(SUBTARGET)
DEVICE_PACKAGES += layerscape-rcw-ls1012afrdm layerscape-ppfe \
layerscape-ppa-ls1012afrdm kmod-ppfe
ifeq ($(SUBTARGET),armv8_32b)
DEVICE_PACKAGES += u-boot-ls1012afrdm-image
endif
DEVICE_DTS = ../../../arm64/boot/dts/freescale/fsl-ls1012a-frdm
FILESYSTEMS := ubifs
UBIFS_OPTS := -m 1 -e 262016 -c 128
UBINIZE_OPTS := -E 5
BLOCKSIZE := 256KiB
PAGESIZE := 1
IMAGE/firmware.bin = ls-clean | \
ls-append $(1)-rcw.bin | pad-to 1M | \
ls-append $(1)-uboot.bin | pad-to 3M | \
ls-append $(1)-uboot-env.bin | pad-to 4M | \
ls-append $(1)-ppa.itb | pad-to 10M | \
ls-append pfe.itb | pad-to 15M | \
ls-append-dtb $$(DEVICE_DTS) | pad-to 16M | \
append-kernel | pad-to 32M | \
append-ubi | check-size 67108865
endef
TARGET_DEVICES += ls1012afrdm

ifeq ($(SUBTARGET),armv8_64b)
define Device/ls1088ardb
DEVICE_TITLE := ls1088ardb-$(SUBTARGET)
DEVICE_PACKAGES += layerscape-rcw-ls1088ardb uboot-layerscape-$(SUBTARGET)-ls1088ardb \
layerscape-mc-ls1088ardb layerscape-dpl-ls1088ardb restool \
layerscape-ppa-ls1088ardb
DEVICE_DTS = ../../../arm64/boot/dts/freescale/fsl-ls1088a-rdb
FILESYSTEMS := ubifs
UBIFS_OPTS := -m 1 -e 262016 -c 128
UBINIZE_OPTS := -E 5
BLOCKSIZE := 256KiB
PAGESIZE := 1
IMAGE/firmware.bin = ls-clean | \
ls-append $(1)-rcw.bin | pad-to 1M | \
ls-append $(1)-uboot.bin | pad-to 3M | \
ls-append $(1)-uboot-env.bin | pad-to 4M | \
ls-append $(1)-ppa.itb | pad-to 10M | \
ls-append $(1)-mc.itb | pad-to 13M | \
ls-append $(1)-dpl.dtb | pad-to 14M | \
ls-append $(1)-dpc.dtb | pad-to 15M | \
ls-append-dtb $$(DEVICE_DTS) | pad-to 16M | \
append-kernel | pad-to 32M | \
append-ubi | check-size 67108865
endef
TARGET_DEVICES += ls1088ardb

define Device/ls2088ardb
DEVICE_TITLE := ls2088ardb-$(SUBTARGET)
DEVICE_PACKAGES += layerscape-rcw-ls2088ardb uboot-layerscape-$(SUBTARGET)-ls2088ardb \
layerscape-mc-ls2088ardb layerscape-dpl-ls2088ardb restool \
layerscape-ppa-ls2088ardb
DEVICE_DTS = ../../../arm64/boot/dts/freescale/fsl-ls2088a-rdb
IMAGE/firmware.bin = ls-clean | \
ls-append $(1)-rcw.bin | pad-to 1M | \
ls-append $(1)-uboot.bin | pad-to 3M | \
ls-append $(1)-uboot-env.bin | pad-to 4M | \
ls-append $(1)-ppa.itb | pad-to 10M | \
ls-append $(1)-mc.itb | pad-to 13M | \
ls-append $(1)-dpl.dtb | pad-to 14M | \
ls-append $(1)-dpc.dtb | pad-to 15M | \
ls-append-dtb $$(DEVICE_DTS) | pad-to 16M | \
append-kernel | pad-to 32M | \
append-rootfs | pad-rootfs | check-size 67108865
endef
TARGET_DEVICES += ls2088ardb
ifeq ($(SUBTARGET),armv8_32b)
include armv8_32b.mk
endif

define Device/traverse-five64
KERNEL_NAME := Image
KERNEL_SUFFIX := -kernel.itb
KERNEL_INSTALL := 1
FILESYSTEMS := ubifs
DEVICE_TITLE := Traverse LS1043 Boards (Five64, LS1043S)
DEVICE_PACKAGES += layerscape-fman-ls1043ardb kmod-i2c-core kmod-rtc-isl1208 uboot-envtools \
uboot-traverse-ls1043v uboot-traverse-ls1043v-sdcard \
kmod-hwmon-core kmod-hwmon-ltc2990 kmod-gpio-pca953x kmod-input-gpio-keys-polled \
kmod-i2c-mux-pca954x kmod-hwmon-pac1934 kmod-hwmon-emc17xx
DEVICE_DESCRIPTION = Build images for Traverse LS1043 boards. This generates a single image \
capable of booting on any of the boards in this family.
DEVICE_DTS = freescale/traverse-ls1043s
DEVICE_DTS_DIR = $(LINUX_DIR)/arch/arm64/boot/dts
DEVICE_DTS_CONFIG = ls1043s
KERNEL := kernel-bin | gzip | traverse-fit gzip $$(DTS_DIR)/$$(DEVICE_DTS).dtb $$(FDT_LOADADDR)
KERNEL_INITRAMFS := kernel-bin | gzip | fit gzip $$(DTS_DIR)/$$(DEVICE_DTS).dtb $$(FDT_LOADADDR)
IMAGES = root sysupgrade.tar
IMAGE/root = append-rootfs
IMAGE/sysupgrade.tar = sysupgrade-tar
UBIFS_OPTS := -m 2048 -e 124KiB -c 4096
endef
TARGET_DEVICES += traverse-five64

$(eval $(call BuildImage))
115 changes: 115 additions & 0 deletions target/linux/layerscape/image/armv8_32b.mk
@@ -0,0 +1,115 @@
#
# Copyright 2018 NXP
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#

define Device/Default
PROFILES := Default
IMAGES := firmware.bin
FILESYSTEMS := ubifs
KERNEL := kernel-bin | uImage none
KERNEL_NAME := zImage
KERNEL_LOADADDR := 0x80008000
KERNEL_ENTRY_POINT := 0x80008000
endef

define Device/ls1012ardb
DEVICE_TITLE := LS1012ARDB
DEVICE_PACKAGES += \
layerscape-rcw-ls1012ardb \
layerscape-ppfe \
layerscape-ppa-ls1012ardb \
u-boot-ls1012ardb-image \
kmod-ppfe
DEVICE_DTS := ../../../arm64/boot/dts/freescale/fsl-ls1012a-rdb
UBIFS_OPTS := -m 1 -e 262016 -c 128
UBINIZE_OPTS := -E 5
BLOCKSIZE := 256KiB
PAGESIZE := 1
IMAGE/firmware.bin := \
ls-clean | \
ls-append $(1)-rcw.bin | pad-to 1M | \
ls-append $(1)-uboot.bin | pad-to 3M | \
ls-append $(1)-uboot-env.bin | pad-to 4M | \
ls-append $(1)-ppa.itb | pad-to 10M | \
ls-append pfe.itb | pad-to 15M | \
ls-append-dtb $$(DEVICE_DTS) | pad-to 16M | \
append-kernel | pad-to 32M | \
append-ubi | check-size 67108865
endef
TARGET_DEVICES += ls1012ardb

define Device/ls1012afrdm
DEVICE_TITLE := LS1012AFRDM
DEVICE_PACKAGES += \
layerscape-rcw-ls1012afrdm \
layerscape-ppfe \
layerscape-ppa-ls1012afrdm \
u-boot-ls1012afrdm-image \
kmod-ppfe
DEVICE_DTS := ../../../arm64/boot/dts/freescale/fsl-ls1012a-frdm
UBIFS_OPTS := -m 1 -e 262016 -c 128
UBINIZE_OPTS := -E 5
BLOCKSIZE := 256KiB
PAGESIZE := 1
IMAGE/firmware.bin := \
ls-clean | \
ls-append $(1)-rcw.bin | pad-to 1M | \
ls-append $(1)-uboot.bin | pad-to 3M | \
ls-append $(1)-uboot-env.bin | pad-to 4M | \
ls-append $(1)-ppa.itb | pad-to 10M | \
ls-append pfe.itb | pad-to 15M | \
ls-append-dtb $$(DEVICE_DTS) | pad-to 16M | \
append-kernel | pad-to 32M | \
append-ubi | check-size 67108865
endef
TARGET_DEVICES += ls1012afrdm

define Device/ls1043ardb
DEVICE_TITLE := LS1043ARDB
DEVICE_PACKAGES += \
layerscape-rcw-ls1043ardb \
layerscape-fman-ls1043ardb \
layerscape-ppa-ls1043ardb \
u-boot-ls1043ardb-image
DEVICE_DTS := ../../../arm64/boot/dts/freescale/fsl-ls1043a-rdb-sdk
FILESYSTEMS := squashfs
IMAGE/firmware.bin := \
ls-clean | \
ls-append $(1)-rcw.bin | pad-to 1M | \
ls-append $(1)-uboot.bin | pad-to 3M | \
ls-append $(1)-uboot-env.bin | pad-to 4M | \
ls-append $(1)-ppa.itb | pad-to 9M | \
ls-append $(1)-fman.bin | pad-to 15M | \
ls-append-dtb $$(DEVICE_DTS) | pad-to 16M | \
append-kernel | pad-to 32M | \
append-rootfs | pad-rootfs | check-size 67108865
endef
TARGET_DEVICES += ls1043ardb

define Device/ls1046ardb
DEVICE_TITLE := LS1046ARDB
DEVICE_PACKAGES += \
layerscape-rcw-ls1046ardb \
layerscape-fman-ls1046ardb \
layerscape-ppa-ls1046ardb \
u-boot-ls1046ardb-image
DEVICE_DTS := ../../../arm64/boot/dts/freescale/fsl-ls1046a-rdb-sdk
UBIFS_OPTS := -m 1 -e 262016 -c 128
UBINIZE_OPTS := -E 5
BLOCKSIZE := 256KiB
PAGESIZE := 1
IMAGE/firmware.bin := \
ls-clean | \
ls-append $(1)-rcw.bin | pad-to 1M | \
ls-append $(1)-uboot.bin | pad-to 3M | \
ls-append $(1)-uboot-env.bin | pad-to 4M | \
ls-append $(1)-ppa.itb | pad-to 9M | \
ls-append $(1)-fman.bin | pad-to 15M | \
ls-append-dtb $$(DEVICE_DTS) | pad-to 16M | \
append-kernel | pad-to 32M | \
append-ubi | check-size 67108865
endef
TARGET_DEVICES += ls1046ardb

0 comments on commit 0d95eb2

Please sign in to comment.