From cc1fee168d497fc1fb2546bf4d3a836208a5b3df Mon Sep 17 00:00:00 2001 From: Rouven Czerwinski Date: Fri, 16 Jun 2017 08:58:08 +0200 Subject: platform-v7a: vexpress: add board support Add support for Versatile Express, with the configs+rules for image creation and bootspec entries. Note that vexpress in qemu can currently only boot from nor, so we put the bootloader, environment and boot state there and the rest of the system into mmc. Signed-off-by: Rouven Czerwinski [add vexpress.conf] Signed-off-by: Chris Fiege [improve commit description] [split from vexpress patches] [fix and cleanupimage generation] Signed-off-by: Robert Schwebel --- configs/platform-v7a/rules/barebox-vexpress.make | 1 + configs/platform-v7a/rules/blspec-vexpress.make | 38 ++++++++++++++++++++++ configs/platform-v7a/rules/image-vexpress-nor.make | 37 +++++++++++++++++++++ configs/platform-v7a/rules/image-vexpress.make | 33 +++++++++++++++++++ 4 files changed, 109 insertions(+) create mode 100644 configs/platform-v7a/rules/blspec-vexpress.make create mode 100644 configs/platform-v7a/rules/image-vexpress-nor.make create mode 100644 configs/platform-v7a/rules/image-vexpress.make (limited to 'configs/platform-v7a/rules') diff --git a/configs/platform-v7a/rules/barebox-vexpress.make b/configs/platform-v7a/rules/barebox-vexpress.make index 54275db..c240362 100644 --- a/configs/platform-v7a/rules/barebox-vexpress.make +++ b/configs/platform-v7a/rules/barebox-vexpress.make @@ -70,6 +70,7 @@ $(STATEDIR)/barebox-vexpress.install: @$(foreach image, $(BAREBOX_VEXPRESS_IMAGES), \ install -m 644 \ $(image) $(IMAGEDIR)/$(notdir $(image))-vexpress;) + @install -D -m644 $(BAREBOX_VEXPRESS_DIR)/defaultenv/barebox_zero_env $(IMAGEDIR)/barebox-zero-env-vexpress @$(call touch) # ---------------------------------------------------------------------------- diff --git a/configs/platform-v7a/rules/blspec-vexpress.make b/configs/platform-v7a/rules/blspec-vexpress.make new file mode 100644 index 0000000..c723dae --- /dev/null +++ b/configs/platform-v7a/rules/blspec-vexpress.make @@ -0,0 +1,38 @@ +# -*-makefile-*- +# +# Copyright (C) 2017 by Chris Fiege +# +# See CREDITS for details about who has contributed to this project. +# +# For further information about the PTXdist project and license conditions +# see the README file. +# + +# +# We provide this package +# +PACKAGES-$(PTXCONF_BLSPEC_VEXPRESS) += blspec-vexpress + +BLSPEC_VEXPRESS_VERSION := 4.11 + +# ---------------------------------------------------------------------------- +# Target-Install +# ---------------------------------------------------------------------------- + +$(STATEDIR)/blspec-vexpress.targetinstall: + @$(call targetinfo) + + @$(call install_init, blspec-vexpress) + @$(call install_fixup,blspec-vexpress,PRIORITY,optional) + @$(call install_fixup,blspec-vexpress,SECTION,base) + @$(call install_fixup,blspec-vexpress,AUTHOR,"Chris Fiege ") + @$(call install_fixup,blspec-vexpress,DESCRIPTION,missing) + + @$(call install_alternative, blspec-vexpress, 0, 0, 0644, \ + /loader/entries/vexpress.conf) + + @$(call install_finish,blspec-vexpress) + + @$(call touch) + +# vim: syntax=make diff --git a/configs/platform-v7a/rules/image-vexpress-nor.make b/configs/platform-v7a/rules/image-vexpress-nor.make new file mode 100644 index 0000000..20773e1 --- /dev/null +++ b/configs/platform-v7a/rules/image-vexpress-nor.make @@ -0,0 +1,37 @@ +# -*-makefile-*- +# +# Copyright (C) 2016 by Michael Olbrich +# +# See CREDITS for details about who has contributed to this project. +# +# For further information about the PTXdist project and license conditions +# see the README file. +# + +# +# We provide this package +# +IMAGE_PACKAGES-$(PTXCONF_IMAGE_VEXPRESS_NOR) += image-flash + +# +# Paths and names +# +IMAGE_VEXPRESS_NOR := image-flash +IMAGE_VEXPRESS_NOR_DIR := $(BUILDDIR)/$(IMAGE_VEXPRESS_NOR) +IMAGE_VEXPRESS_NOR_IMAGE := $(IMAGEDIR)/vexpress.norimg +IMAGE_VEXPRESS_NOR_CONFIG := vexpress-nor.config + +# ---------------------------------------------------------------------------- +# Image +# ---------------------------------------------------------------------------- + +# Note: no ':' and only works with one device tree +IMAGE_VEXPRESS_NOR_ENV = \ + DTB=$(IMAGEDIR)/vexpress-v2p-ca9.dtb + +$(IMAGE_VEXPRESS_NOR_IMAGE): + @$(call targetinfo) + @$(call image/genimage, IMAGE_VEXPRESS_NOR) + @$(call finish) + +# vim: syntax=make diff --git a/configs/platform-v7a/rules/image-vexpress.make b/configs/platform-v7a/rules/image-vexpress.make new file mode 100644 index 0000000..a5d8674 --- /dev/null +++ b/configs/platform-v7a/rules/image-vexpress.make @@ -0,0 +1,33 @@ +# -*-makefile-*- +# +# Copyright (C) 2017 by Chris Fiege +# +# See CREDITS for details about who has contributed to this project. +# +# For further information about the PTXdist project and license conditions +# see the README file. +# + +# +# We provide this package +# +IMAGE_PACKAGES-$(PTXCONF_IMAGE_VEXPRESS) += image-vexpress + +# +# Paths and names +# +IMAGE_VEXPRESS := image-vexpress +IMAGE_VEXPRESS_DIR := $(BUILDDIR)/$(IMAGE_VEXPRESS) +IMAGE_VEXPRESS_IMAGE := $(IMAGEDIR)/vexpress.hdimg +IMAGE_VEXPRESS_CONFIG := vexpress.config + +# ---------------------------------------------------------------------------- +# Image +# ---------------------------------------------------------------------------- + +$(IMAGE_VEXPRESS_IMAGE): + @$(call targetinfo) + @$(call image/genimage, IMAGE_VEXPRESS) + @$(call finish) + +# vim: syntax=make -- cgit v1.2.3