x-load is a first level bootloader for Texas Intruments OMAP
microprocessors (similar to the AT91Bootstrap application).

This bootstrap package is required on TI OMAP boards where
dataflash/nandflash or USB/RS232 is used to boot from. In
any of these cases the internal bootROM of the OMAP core is
used to boot the board with.

Signed-off-by: Stephan Linz <l...@li-pro.net>
---
 platforms/x-load.in |   60 ++++++++++++++++++++++++++++++++++
 rules/x-load.make   |   89 +++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 149 insertions(+), 0 deletions(-)
 create mode 100644 platforms/x-load.in
 create mode 100644 rules/x-load.make

diff --git a/platforms/x-load.in b/platforms/x-load.in
new file mode 100644
index 0000000..9b0003f
--- /dev/null
+++ b/platforms/x-load.in
@@ -0,0 +1,60 @@
+## SECTION=bootloader
+
+menuconfig X_LOAD
+       bool
+       depends on ARCH_ARM_OMAP
+       prompt "TI X-Loader                   "
+       help
+         The X-Loader is a first level bootloader for Texas Intruments OMAP
+         microprocessors (similar to the AT91Bootstrap application). It is
+         used for booting these microprocessors from NAND-flash, MMC/SD-card,
+         USB or serial interfaces.
+
+if X_LOAD
+
+comment "------------------------- Notice -------------------------"
+comment "The X-Loader source tree was never released as download"
+comment "archive. As long as that fact exists you have to store"
+comment "a build tree inside your ptxdist project root at:"
+comment "${PTXDIST_WORKSPACE}/local_src/x-load-${X_LOAD_VERSION}"
+comment "----------------------------------------------------------"
+
+config X_LOAD_VERSION
+       string
+       default 1.4.2-dirty
+       prompt "X-Loader version"
+       help
+         Enter the X-Loader version you want to build. Usally something like 
"1.4.2"
+
+config X_LOAD_SERIES
+       prompt "patch series file"
+       string
+       default "series${PTXDIST_PLATFORMSUFFIX}"
+       help
+         This entry specifies a patch series file which has to live in
+         the kernel patches directory:
+
+         The series file contains lines with names of patch files which
+         are then being applied to the kernel.
+
+config X_LOAD_CONFIG
+       string
+       prompt "X-Loader config target"
+       help
+         The X-Loader make config target. Usually something like
+         "yourbox_config". See X-Loader's main Makefile for possible
+         configuration targets.
+
+config X_LOAD_MAKE_IFT
+       bool
+       prompt "Generate signed IFT file"
+       help
+         When this option is enabled, a so-called IFT file is generated. You
+         need a X-Loader source tree that supports this. This must know about
+         the make target 'ift' so ptxdist can do the following: "make ift".
+
+         In details you will need the tool signGP from
+         http://beagleboard.googlecode.com/files/signGP.c
+
+endif
+
diff --git a/rules/x-load.make b/rules/x-load.make
new file mode 100644
index 0000000..69daea9
--- /dev/null
+++ b/rules/x-load.make
@@ -0,0 +1,89 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2010 by Stephan Linz
+#
+# 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_X_LOAD) += x-load
+
+#
+# Paths and names
+#
+X_LOAD_VERSION := $(call remove_quotes,$(PTXCONF_X_LOAD_VERSION))
+X_LOAD         := x-load-$(X_LOAD_VERSION)
+X_LOAD_URL     := file://$(PTXDIST_WORKSPACE)/local_src/$(X_LOAD)
+X_LOAD_SOURCE  := $(SRCDIR)/$(X_LOAD)
+## not yet ## X_LOAD_SUFFIX    := tar.bz2
+## not yet ## X_LOAD_URL       := 
http://__SERVER__/__PATH_TO__/$(X_LOAD).$(X_LOAD_SUFFIX)
+## not yet ## X_LOAD_SOURCE    := $(SRCDIR)/$(X_LOAD).$(X_LOAD_SUFFIX)
+X_LOAD_DIR     := $(BUILDDIR)/$(X_LOAD)
+
+# ----------------------------------------------------------------------------
+# Get
+# ----------------------------------------------------------------------------
+
+$(X_LOAD_SOURCE):
+       @$(call targetinfo)
+       @$(call get, X_LOAD)
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+X_LOAD_PATH    := PATH=$(CROSS_PATH)
+X_LOAD_MAKE_OPT        := CROSS_COMPILE=$(BOOTLOADER_CROSS_COMPILE) 
HOSTCC=$(HOSTCC)
+X_LOAD_MAKE_PAR        := NO
+
+ifdef PTXCONF_X_LOAD_MAKE_IFT
+X_LOAD_MAKE_OPT        += ift
+endif
+
+$(STATEDIR)/x-load.prepare:
+       @$(call targetinfo)
+       cd $(X_LOAD_DIR) && \
+               $(X_LOAD_PATH) \
+               $(MAKE) $(X_LOAD_MAKE_OPT) $(PTXCONF_X_LOAD_CONFIG)
+       @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/x-load.install:
+       @$(call targetinfo)
+       @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/x-load.targetinstall:
+       @$(call targetinfo)
+       @install -D -m644 $(X_LOAD_DIR)/x-load.bin $(IMAGEDIR)/x-load.bin
+ifdef PTXCONF_X_LOAD_MAKE_IFT
+       @install -D -m644 $(X_LOAD_DIR)/x-load.bin.ift 
$(IMAGEDIR)/x-load.bin.ift
+       @install -D -m644 $(X_LOAD_DIR)/x-load.bin.ift $(IMAGEDIR)/MLO
+endif
+       @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Clean
+# ----------------------------------------------------------------------------
+
+x-load_clean:
+       @$(call targetinfo)
+       @$(call clean_pkg, X_LOAD)
+       @rm -rf $(IMAGEDIR)/x-load.bin
+ifdef PTXCONF_X_LOAD_MAKE_IFT
+       @rm -rf $(IMAGEDIR)/x-load.bin.ift
+       @rm -rf $(IMAGEDIR)/MLO
+endif
+
+# vim: syntax=make
-- 
1.6.0.4


-- 
ptxdist mailing list
ptxdist@pengutronix.de

Reply via email to