Am Dienstag, 3. August 2010, um 23:52:50 schrieb Marc Kleine-Budde: > Hey Stephan, > > Stephan Linz wrote: > > 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. > > thanks for the patch. Please explain how to get the source, maybe we can > figure out a nice way to automate things. > > Some somments inline... > > > 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 "----------------------------------------------------------" > > Where to get the sources from, then?
see answer in my previous email... > > > + > > +config X_LOAD_VERSION > > + string > > + default 1.4.2-dirty > > ^^^^^^ > > is this intentionally? Oops, I'll chnage to latest version 1.4.4ss I've used ... > > > + prompt "X-Loader version" > > + help > > + Enter the X-Loader version you want to build. Usally something like > > "1.4.2" + > > +config X_LOAD_SERIES > > please remove this, a single series file would proably enough > (I know, you probably copied it from u-boot) OK, I do so ... > > > + 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) > > _PATH is obsolete, please remove > > > +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) > > ^^^^^^^^^^^^^^^^^^ > > hmmm...does a "make ift" compile anything? in the prepare stage nothing > should be compiled. 'make ift' compiles the x-load.bin file and from this a so named "signed image" x-load.bin.ift Without PTXCONF_X_LOAD_MAKE_IFT set make compiles only the bin file. But I see your questioning eyes. I should use $(STATEDIR)/@pack...@.compile: not $(STATEDIR)/@pack...@.prepare: right? > > > + @$(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 this target please: > > $(STATEDIR)/x-load.clean: I do so ... > > + @$(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 > > just put all three in one line, the ifdef can be removed. "rm -f" will > not complain it a file doesn't exist. I do so ... > > > + > > +# vim: syntax=make > > cheers, Marc -- Viele Grüße, Stephan Linz ______________________________________________________________________________ OpenDCC: http://www.li-pro.net/opendcc.phtml PC/M: http://www.li-pro.net/pcm.phtml CDK4AVR: http://cdk4avr.sourceforge.net/ CDK4NIOS: http://cdk4nios.sourceforge.net/ CDK4MSP: http://cdk4msp.sourceforge.net/ CPM4L: http://download.opensuse.org/repositories/home:/rexut:/CPM4L -- ptxdist mailing list ptxdist@pengutronix.de