summaryrefslogtreecommitdiffstats
path: root/configs/platform-mips/rules
diff options
context:
space:
mode:
authorOleksij Rempel <o.rempel@pengutronix.de>2020-02-16 09:38:23 +0100
committerRobert Schwebel <r.schwebel@pengutronix.de>2020-02-16 11:31:56 +0100
commitdc788e1c1c1921321377754e47fc558558456019 (patch)
treee7c491e139e9a9edd4e507da587518064400fad7 /configs/platform-mips/rules
parent521707e129e9d9039b430a201a33d45af143a6d7 (diff)
downloadDistroKit-dc788e1c1c1921321377754e47fc558558456019.tar.gz
DistroKit-dc788e1c1c1921321377754e47fc558558456019.tar.xz
MIPS: add initial ar9331 support
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Diffstat (limited to 'configs/platform-mips/rules')
-rw-r--r--configs/platform-mips/rules/barebox-ar9331.make111
-rw-r--r--configs/platform-mips/rules/blspec-ar9331.make39
-rw-r--r--configs/platform-mips/rules/image-ar9331.make34
-rw-r--r--configs/platform-mips/rules/kernel-ar9331.make111
4 files changed, 295 insertions, 0 deletions
diff --git a/configs/platform-mips/rules/barebox-ar9331.make b/configs/platform-mips/rules/barebox-ar9331.make
new file mode 100644
index 0000000..a5c5205
--- /dev/null
+++ b/configs/platform-mips/rules/barebox-ar9331.make
@@ -0,0 +1,111 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2017 by Robert Schwebel <r.schwebel@pengutronix.de>
+# Copyright (C) 2020 by Oleksij Rempel <o.rempel@pengutronix.de>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_BAREBOX_AR9331) += barebox-ar9331
+
+#
+# Paths and names
+#
+BAREBOX_AR9331_VERSION := $(call remove_quotes,$(PTXCONF_BAREBOX_COMMON_VERSION))
+BAREBOX_AR9331_MD5 := $(call remove_quotes,$(PTXCONF_BAREBOX_COMMON_MD5))
+BAREBOX_AR9331 := barebox-ar9331-$(BAREBOX_AR9331_VERSION)
+BAREBOX_AR9331_SUFFIX := tar.bz2
+BAREBOX_AR9331_URL := $(call barebox-url, BAREBOX_AR9331)
+BAREBOX_AR9331_PATCHES := barebox-$(BAREBOX_AR9331_VERSION)
+BAREBOX_AR9331_SOURCE := $(SRCDIR)/$(BAREBOX_AR9331_PATCHES).$(BAREBOX_AR9331_SUFFIX)
+BAREBOX_AR9331_DIR := $(BUILDDIR)/$(BAREBOX_AR9331)
+BAREBOX_AR9331_BUILD_DIR := $(BAREBOX_AR9331_DIR)-build
+BAREBOX_AR9331_CONFIG := $(call ptx/in-platformconfigdir, barebox-ar9331.config)
+BAREBOX_AR9331_REF_CONFIG := $(call ptx/in-platformconfigdir, barebox.config)
+BAREBOX_AR9331_LICENSE := GPL-2.0-only
+BAREBOX_AR9331_BUILD_OOT := KEEP
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+# use host pkg-config for host tools
+BAREBOX_AR9331_PATH := PATH=$(HOST_PATH)
+
+BAREBOX_AR9331_WRAPPER_BLACKLIST := \
+ $(PTXDIST_LOWLEVEL_WRAPPER_BLACKLIST)
+
+BAREBOX_AR9331_CONF_OPT := \
+ -C $(BAREBOX_AR9331_DIR) \
+ O=$(BAREBOX_AR9331_BUILD_DIR) \
+ $(call barebox-opts, BAREBOX_AR9331)
+
+BAREBOX_AR9331_MAKE_OPT := $(BAREBOX_AR9331_CONF_OPT)
+
+BAREBOX_AR9331_IMAGES := images/barebox-dptechnics-dpt-module.img
+BAREBOX_AR9331_IMAGES := $(addprefix $(BAREBOX_AR9331_BUILD_DIR)/,$(BAREBOX_AR9331_IMAGES))
+
+ifdef PTXCONF_BAREBOX_AR9331
+$(BAREBOX_AR9331_CONFIG):
+ @echo
+ @echo "****************************************************************************"
+ @echo " Please generate a bareboxconfig with 'ptxdist menuconfig barebox-ar9331'"
+ @echo "****************************************************************************"
+ @echo
+ @echo
+ @exit 1
+endif
+
+$(STATEDIR)/barebox-ar9331.prepare: $(BAREBOX_AR9331_CONFIG)
+ @$(call targetinfo)
+ @$(call world/prepare, BAREBOX_AR9331)
+ @rm -f "$(BAREBOX_AR9331_BUILD_DIR)/.ptxdist-defaultenv"
+ @ln -s "$(call ptx/in-platformconfigdir, barebox-ar9331-defaultenv)" \
+ "$(BAREBOX_AR9331_BUILD_DIR)/.ptxdist-defaultenv"
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/barebox-ar9331.install:
+ @$(call targetinfo)
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/barebox-ar9331.targetinstall:
+ @$(call targetinfo)
+ @$(foreach image, $(BAREBOX_AR9331_IMAGES), \
+ install -m 644 \
+ $(image) $(IMAGEDIR)/$(notdir $(image))$(ptx/nl))
+ @install -D -m644 $(BAREBOX_AR9331_BUILD_DIR)/defaultenv/barebox_zero_env $(IMAGEDIR)/barebox-zero-env-ar9331
+ @install -D -m644 $(BAREBOX_AR9331_BUILD_DIR)/arch/mips/dts/ar9331-dptechnics-dpt-module.dtb $(IMAGEDIR)/ar9331-dptechnics-dpt-module.dtb-bb
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Clean
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/barebox-ar9331.clean:
+ @$(call targetinfo)
+ @$(call clean_pkg, BAREBOX_AR9331)
+ @$(foreach image, $(BAREBOX_AR9331_IMAGES), \
+ rm -fv $(IMAGEDIR)/$(notdir $(image))$(ptx/nl))
+ @rm -vf $(IMAGEDIR)/barebox-zero-env-ar9331 \
+ $(IMAGEDIR)/ar9331-dptechnics-dpt-module.dtb-bb
+
+# ----------------------------------------------------------------------------
+# oldconfig / menuconfig
+# ----------------------------------------------------------------------------
+
+barebox-ar9331_oldconfig barebox-ar9331_menuconfig barebox-ar9331_nconfig: $(STATEDIR)/barebox-ar9331.extract
+ @$(call world/kconfig, BAREBOX_AR9331, $(subst barebox-ar9331_,,$@))
+
+# vim: syntax=make
diff --git a/configs/platform-mips/rules/blspec-ar9331.make b/configs/platform-mips/rules/blspec-ar9331.make
new file mode 100644
index 0000000..53f2bc4
--- /dev/null
+++ b/configs/platform-mips/rules/blspec-ar9331.make
@@ -0,0 +1,39 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2017 by Chris Fiege <c.fiege@pengutronix.de>
+# Copyright (C) 2020 by Oleksij Rempel <o.rempel@pengutronix.de>
+#
+# 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_AR9331) += blspec-ar9331
+
+BLSPEC_AR9331_VERSION := 4.11
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/blspec-ar9331.targetinstall:
+ @$(call targetinfo)
+
+ @$(call install_init, blspec-ar9331)
+ @$(call install_fixup,blspec-ar9331,PRIORITY,optional)
+ @$(call install_fixup,blspec-ar9331,SECTION,base)
+ @$(call install_fixup,blspec-ar9331,AUTHOR,"Oleksij Rempel <o.rempel@pengutronix.de>")
+ @$(call install_fixup,blspec-ar9331,DESCRIPTION,missing)
+
+ @$(call install_alternative, blspec-ar9331, 0, 0, 0644, \
+ /loader/entries/ar9331.conf)
+
+ @$(call install_finish,blspec-ar9331)
+
+ @$(call touch)
+
+# vim: syntax=make
diff --git a/configs/platform-mips/rules/image-ar9331.make b/configs/platform-mips/rules/image-ar9331.make
new file mode 100644
index 0000000..b9ce108
--- /dev/null
+++ b/configs/platform-mips/rules/image-ar9331.make
@@ -0,0 +1,34 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2017 by Chris Fiege <c.fiege@pengutronix.de>
+# Copyright (C) 2020 by Oleksij Rempel <o.rempel@pengutronix.de>
+#
+# 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_AR9331) += image-ar9331
+
+#
+# Paths and names
+#
+IMAGE_AR9331 := image-ar9331
+IMAGE_AR9331_DIR := $(BUILDDIR)/$(IMAGE_AR9331)
+IMAGE_AR9331_IMAGE := $(IMAGEDIR)/ar9331.hdimg
+IMAGE_AR9331_CONFIG := ar9331.config
+
+# ----------------------------------------------------------------------------
+# Image
+# ----------------------------------------------------------------------------
+
+$(IMAGE_AR9331_IMAGE):
+ @$(call targetinfo)
+ @$(call image/genimage, IMAGE_AR9331)
+ @$(call finish)
+
+# vim: syntax=make
diff --git a/configs/platform-mips/rules/kernel-ar9331.make b/configs/platform-mips/rules/kernel-ar9331.make
new file mode 100644
index 0000000..fd594ca
--- /dev/null
+++ b/configs/platform-mips/rules/kernel-ar9331.make
@@ -0,0 +1,111 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2020 by Oleksij Rempel <o.rempel@pengutronix.de>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_KERNEL_AR9331) += kernel-ar9331
+
+#
+# Paths and names
+#
+KERNEL_AR9331_VERSION := $(KERNEL_VERSION)
+KERNEL_AR9331_MD5 := $(call remove_quotes,$(PTXCONF_KERNEL_MD5))
+KERNEL_AR9331 := linux-ar9331-$(KERNEL_AR9331_VERSION)
+KERNEL_AR9331_SUFFIX := tar.xz
+KERNEL_AR9331_URL := $(call kernel-url, KERNEL_AR9331)
+KERNEL_AR9331_PATCHES := linux-$(KERNEL_AR9331_VERSION)
+KERNEL_AR9331_SOURCE := $(SRCDIR)/$(KERNEL_AR9331_PATCHES).$(KERNEL_AR9331_SUFFIX)
+KERNEL_AR9331_DIR := $(BUILDDIR)/$(KERNEL_AR9331)
+KERNEL_AR9331_BUILD_DIR := $(KERNEL_AR9331_DIR)-build
+KERNEL_AR9331_CONFIG := $(call ptx/in-platformconfigdir, kernelconfig-ar9331)
+KERNEL_AR9331_REF_CONFIG := $(call ptx/in-platformconfigdir, kernelconfig)
+KERNEL_AR9331_LICENSE := GPL-2.0-only
+KERNEL_AR9331_BUILD_OOT := KEEP
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+# use CONFIG_CC_STACKPROTECTOR if available. The rest makes no sense for the kernel
+KERNEL_AR9331_WRAPPER_BLACKLIST := \
+ $(PTXDIST_LOWLEVEL_WRAPPER_BLACKLIST)
+
+KERNEL_AR9331_CONF_OPT := \
+ -C $(KERNEL_AR9331_DIR) \
+ O=$(KERNEL_AR9331_BUILD_DIR) \
+ $(call kernel-opts, KERNEL_AR9331)
+
+KERNEL_AR9331_IMAGES := vmlinuz
+KERNEL_AR9331_IMAGES := $(addprefix $(KERNEL_AR9331_BUILD_DIR)/,$(KERNEL_AR9331_IMAGES))
+
+ifdef PTXCONF_KERNEL_AR9331
+$(KERNEL_AR9331_CONFIG):
+ @echo
+ @echo "*************************************************************************"
+ @echo " Please generate a kernelconfig with 'ptxdist menuconfig kernel-ar9331'"
+ @echo "*************************************************************************"
+ @echo
+ @echo
+ @exit 1
+endif
+
+# ----------------------------------------------------------------------------
+# Compile
+# ----------------------------------------------------------------------------
+
+KERNEL_AR9331_MAKE_OPT := \
+ $(KERNEL_AR9331_CONF_OPT) \
+ vmlinuz modules
+
+# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+KERNEL_AR9331_INSTALL_OPT := \
+ $(call kernel-opts, KERNEL_AR9331) \
+ modules_install
+
+$(STATEDIR)/kernel-ar9331.install:
+ @$(call targetinfo)
+ @$(call world/install, KERNEL_AR9331)
+ @$(foreach image, $(KERNEL_AR9331_IMAGES), \
+ install -m 644 $(image) $(IMAGEDIR)/$(notdir $(image))-ar9331$(ptx/nl))
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/kernel-ar9331.targetinstall:
+ @$(call targetinfo)
+
+ @$(call install_init, kernel-ar9331)
+ @$(call install_fixup, kernel-ar9331, PRIORITY,optional)
+ @$(call install_fixup, kernel-ar9331, SECTION,base)
+ @$(call install_fixup, kernel-ar9331, AUTHOR,"Oleksij Rempel <o.rempel@pengutronix.de>")
+ @$(call install_fixup, kernel-ar9331, DESCRIPTION,missing)
+
+ @$(call install_copy, kernel-ar9331, 0, 0, 0644, \
+ $(IMAGEDIR)/vmlinuz-ar9331, /boot/vmlinuz-ar9331, n)
+
+ @$(call install_glob, kernel-ar9331, 0, 0, -, /lib/modules, *.ko,, k)
+ @$(call install_glob, kernel-ar9331, 0, 0, -, /lib/modules,, *.ko */build */source, n)
+
+ @$(call install_finish, kernel-ar9331)
+
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# oldconfig / menuconfig
+# ----------------------------------------------------------------------------
+
+kernel-ar9331_oldconfig kernel-ar9331_menuconfig kernel-ar9331_nconfig: $(STATEDIR)/kernel-ar9331.extract
+ @$(call world/kconfig, KERNEL_AR9331, $(subst kernel-ar9331_,,$@))
+
+# vim: syntax=make