9
0
Fork 0
Commit Graph

282 Commits

Author SHA1 Message Date
Sascha Hauer 35405138c8 Merge branch 'for-next/socfpga' 2015-02-04 19:09:16 +01:00
Sascha Hauer ce961e3412 Merge branch 'for-next/misc' 2015-02-04 19:09:15 +01:00
Wadim Egorov f0f6a7477b Fix spelling: pathes -> paths
Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2015-01-28 10:02:56 +01:00
Antony Pavlov ad3c55fbf2 scripts/checkpatch.pl: don't search for CREDITS when checking top_of_kernel_tree()
The CREDITS file is removed in the commit

    commit 6570288f2d
    Author: Masahiro Yamada <yamada.m@jp.panasonic.com>
    Date:   Tue Jan 13 14:27:07 2015 +0900

        Remove the CREDITS file

But checkpatch.pl still trying to check it presence.
There is not such CREDITS file and checkpatch.pl exits with
'Must be run from the top-level dir. of a kernel tree' message.

Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2015-01-20 07:57:19 +01:00
Jean-Christophe PLAGNIOL-VILLARD 616b343493 kconfig/menu.c:590: fix warning: ‘jump’ may be used uninitialized in this function [-Wmaybe-uninitialized]
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2015-01-13 08:47:30 +01:00
Markus Pargmann 4e6ab1a1fa scripts: socfpga sequencer extraction tool
This script extracts the socfpga sequencer from a generated u-boot
automagically. The resulting changes of the barebox tree should be
enough to compile with the new sequencer.

Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2015-01-13 08:42:16 +01:00
Sascha Hauer 27114b30bc scripts: Add mxs-usb-loader tool
This is directly taken from the rockbox projects sbloader tool,
just renamed to mxs-usb-loader to avoid confusion with bareboxes
several different image tools.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2015-01-05 11:30:59 +01:00
Sascha Hauer 2b50a12c1e scripts: Add mxsboot tool
Copied from U-Boot v2014.10 and changed to use getopt instead
of handcrafted parsing.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2015-01-05 11:30:59 +01:00
Sascha Hauer d19dff8f15 scripts: add mxsimage tool
This is copied from U-Boot v2014.10 and modified for use with
barebox:

- Add a main() function to make it a standalone tool
- Add option to pass in the prepare stage and bootloader
  image as options. If the config file contains @PREP@ or
  @BOOTLOADER@ the string will be replaced with the actual
  image file passed via the -p and -b options.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2015-01-05 11:30:59 +01:00
Sascha Hauer d3933bd350 Merge branch 'for-next/marvell' 2014-12-08 14:53:59 +01:00
Sascha Hauer 4b59e92dc7 Merge branch 'for-next/kconfig' 2014-12-08 14:53:59 +01:00
Sascha Hauer 18895514dc kconfig: update to v3.18-rc6
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-11-27 15:42:07 +01:00
Sascha Hauer 3a0e9bfd0a scripts/Makefile.host: Update to Linux-3.18-rc6
Needed for new Kconfig.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-11-27 15:42:07 +01:00
Masahiro Yamada 22b3745f97 kbuild: handle multi-objs dependency appropriately
The comment in scripts/Makefile.build says as follows:

  We would rather have a list of rules like
        foo.o: $(foo-objs)
  but that's not so easy, so we rather make all composite objects depend
  on the set of all their parts

This commit makes it possible!

For example, assume a Makefile like this

  obj-m = foo.o bar.o
  foo-objs := foo1.o foo2.o
  bar-objs := bar1.o bar2.o

Without this patch, foo.o depends on all of
foo1.o foo2.o bar1.o bar2.o.
It looks funny that foo.o is regenerated when bar1.c is updated.

Now we can handle the dependency of foo.o and bar.o separately.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Signed-off-by: Michal Marek <mmarek@suse.cz>
2014-11-27 15:42:07 +01:00
Sascha Hauer ee2a559afd imx-usb-loader: Add i.MX6sx support
Not much to do here, only add the Product ID.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-11-27 11:25:23 +01:00
Uwe Kleine-König ef8a47a6e7 scripts: kwboot: fix detection of timeout
In function kwboot_xm_sendblock() the loop that implements retrying to
send a boot block might be quit if kwboot_tty_send or kwboot_tty_recv
return a failure. In this case the value of the variable c that is
expected to hold the response byte is uninitialized and most likely
still holds an ACK from the previous call to kwboot_xm_sendblock().

So the right thing to do is not to clobber rc if it's already != 0.

The result of this patch in my current scenario is that kwboot dies with

	xmodem: Connection timed out

when the SoC stops replying instead of continuing to try sending the
remaining blocks which results in select() blocking for one second for
each block.

Fixes: 0535713bbf ("scripts: add kwboot tool")
Signed-off-by: Uwe Kleine-König <uwe@kleine-koenig.org>
--
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
Cc: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
Cc: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>

I also tried to increase the timeout, but without success :-(. Will test
a different USB-to-RS232 adapter ...
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-11-17 08:52:52 +01:00
Sascha Hauer 592d35a47c Merge branch 'for-next/xz' 2014-11-05 15:47:39 +01:00
Sascha Hauer ccb2816477 Add xz decompression support
This adds xz decompression support from the kernel. Both compressing
the barebox binary with xz and decompressing xz files on the commandline
is supported.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-11-04 12:18:55 +01:00
Masahiro Yamada 08df1282f4 scripts: add mailmapper, a tool to create/update mailmap file
This tool helps to create/update the mailmap file.

It runs 'git shortlog' internally and searches differently spelled author
names which share the same email address. The author name with the most
commits is asuumed to be a canonical real name. If the number of commits
from the cananonical name is equal to or greater than 'MIN_COMMITS' (=50),
the entry for the cananical name will be output. ('MIN_COMMITS' is used
here because we do not want to create a fat mailmap by adding every author
with only a few commits.)

If there exists a mailmap file specified by the mailmap.file configuration
options or '.mailmap' at the toplevel of the repository, it is used as
a base file.

The base file and the newly added entries are merged together and sorted
alphabetically (but the comment block is kept untouched), and then printed
to standard output.

 Usage
 -----

  scripts/mailmapper

prints the mailmapping to standard output.

  scripts/mailmapper > tmp; mv tmp .mailmap

will be useful for updating '.mailmap' file.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-10-17 11:10:00 +02:00
Sascha Hauer 8c746628fe Merge branch 'for-next/misc' 2014-10-02 08:54:42 +02:00
Sascha Hauer 2a2a8b9052 Merge branch 'for-next/imx' 2014-10-02 08:54:41 +02:00
Sascha Hauer ad428bcb5d scripts: mk-am3xxx-spi-image: fix wrong assumptions about SPI images
We assumed that there is a special image format for SPI. This is not
the case. The AM33xx can boot either images generated with omap_signGP
or raw images which only have the image size and load address in front
of the image. Whether these images are booted from SPI or another
boot medium doesn't matter. The only special thing about SPI is that
the image is in big endian format.

- renames mk-am3xxx-spi-image.c to mk-omap-image.c as the image format
  is not only supported by AM3xxx but also by the OMAP SoCs
- removes the option to specify the SoC
- introduces -s to build a big endian image
- detects if an image already is an image generated with omap_signGP

So the behaviour is like this:

raw image -> mk-omap-image -> prepend size/address -> image for SD/MMC
raw image -> mk-omap-image -s -> prepend size/address, big endian swap -> image for SPI
CH image -> mk-omap-image -> nothing, input == output
CH image -> mk-omap-image -s -> big endian swap -> image for SPI

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-09-26 09:57:18 +02:00
Eric Bénard 690e392027 imx-image: handle i.MX35 special case
From the i.MX35 user manual :
Since MLC NAND Flash devices do not guarantee error-free boot blocks,
the i.MX35 boot code requires that the first 4 Kbytes of boot code be
duplicated in a subsequent block to serve as a second copy option.

Actually imx-image puts the image at 4k but it seems that the i.MX35
bootrom copies only from 8k as it expects that there is a copy of the
first 0-4k in 4k-8k (and is supposed to use this copy if there is an
ECC error in the first 4k) as we can see in the following lines :

barebox@Eukrea CPUIMX35:/  md -s /dev/nand0 0x0
00000000: ea0003fe eafffffe eafffffe eafffffe                ................
00000010: eafffffe eafffffe eafffffe eafffffe                ................
00000020: 65726162 00786f62 00000000 00000000
barebox.........

=-> header is @ 0 in flash

barebox@Eukrea CPUIMX35:/  md -s /dev/nand0 0x1000
00001000: 56341200 00000000 0001eda1 00000000                ..4V............
00001010: 00000000 00000000 00000000
00000000                ................

=-> so we have data @ 0x1000 in flash

barebox@Eukrea CPUIMX35:/  md 0x87f00000
87f00000: 00000000 00000000 00000000 00000000                ................
87f00010: 00000000 00000000 00000000
00000000                ................

=-> but we don't find this data in RAM

barebox@Eukrea CPUIMX35:/  md -s /dev/nand0 0x2000
00002000: ea000012 eafffffe eafffffe eafffffe                ................
00002010: eafffffe eafffffe eafffffe eafffffe                ................
00002020: 65726162 00786f62 00000000 00034272
barebox.....rB..

=-> so we have the image @ 0x2000 in flash

barebox@Eukrea CPUIMX35:/  md 0x87f01000
87f01000: ea000871 eafffffe eafffffe eafffffe                q...............
87f01010: eafffffe eafffffe eafffffe eafffffe                ................
87f01020: 65726162 00786f62 87f02000 0003b520                barebox.. .. ...

=-> and we find it in RAM

Signed-off-by: Eric Bénard <eric@eukrea.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-09-25 08:13:24 +02:00
Sascha Hauer 072a7964a3 imx-image: Handle check commands correctly
The length of two subsequent check commands was incorrectly calculated.
The check commands have a fixed length anyway, so program a fixed length
in the check command and skip the code from check_last_dcd.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-09-19 07:44:37 +02:00
Sascha Hauer f83a3e39f5 imx-usb-loader: Skip unknown tags
Instead of bailing out skip unknown tags. These tags are usually
doing operations to poll for a certain register state. The correct
solution is to implement this register polling, but for now delay
execution for a while and assume the register has the correct
state afterwards.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-09-19 07:44:37 +02:00
Sascha Hauer 03be149952 Add some .gitignore files
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-09-12 11:59:24 +02:00
Antony Pavlov 767cd01fac checkpatch.pl: check for the FSF mailing address
This check code is imported from Linux v3.16 checkpatch.pl.

Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-09-12 07:38:37 +02:00
Philipp Zabel c61c813e77 Fix barebox metadata
Patch 97e81f2d78 (Add support for metadata in barebox images)
writes the wrong length for the model tag in the barebox metadata.
Fix this to use the correct value.

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-09-04 14:43:58 +02:00
Andreas Pretzsch 710d97bcec scripts: gitignore: update based on Makefile
Create up-to-date list of hostprogs and targetprogs based on Makefile.
Have this list sorted like the targets in the Makefile to ease maintenance.
Also move some leftovers from root .gitignore over here.

Signed-off-by: Andreas Pretzsch <apr@cn-eng.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-09-01 14:24:52 +02:00
Antony Pavlov 5473a6a7f9 scripts: add bareboximd{,-target} to .gitignore
Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-09-01 14:24:51 +02:00
Lucas Stach 75359aaafc scripts: imx-image: add input validation to mw
Stop and print a helpful message if we encounter an
illegal token while parsing the DCD config, instead
of silently swallowing the error and pushing random
stuff into the DCD.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-09-01 14:24:51 +02:00
Lucas Stach 9b707a1fa3 Makefile.lib: imxcfg: fix include path
MACH is not defined in this context, also it's very
unlikely that we will use the imximg tool with an other
arch than IMX, so just hardcode the path.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-09-01 14:24:51 +02:00
Sascha Hauer 5b7b7ee5d9 Merge branch 'for-next/metadata'
Conflicts:
	arch/arm/dts/Makefile
	common/Makefile
	lib/Makefile
2014-08-07 06:15:16 +02:00
Sascha Hauer 50d10b224e Merge branch 'for-next/env' 2014-08-07 06:14:58 +02:00
Sascha Hauer 97e81f2d78 Add support for metadata in barebox images
It's often useful to get some information about a barebox image
before starting or flashing it. This patch introduces barebox
Image MetaData (IMD). When enabled a barebox image will contain
a list of tags containing the desired information. We have tags
for:

- the barebox release (2014.07.0-00160-g035de50-dirty)
- the build timestamp (#741 Mon Jul 28 15:08:54 CEST 2014)
- the board model the image is intended for
- the device tree toplevel compatible property

Also there is an additional generic key-value store which stores
parameters for which no dedicated tag exists. In this patch it
is used for the memory size an image supports.

Since there is no fixed offset in a barebox image which can be
used for storing the information, the metadata is stored somewhere
in the image and found by iterating over the image. This works
for most image types, but obviously not for SoC images which are
encoded or encrypted in some way.

There is a 'imd' tool compiled from the same sources for barebox,
for the compile host and for the target, so the metadata information
is available whereever needed.

For device tree boards the model and of_compatible tags are automatically
generated.

Example output of the imd tool for a Phytec phyFLEX image:

build: #889 Wed Jul 30 16:08:54 CEST 2014
release: 2014.07.0-00167-g6b2070d-dirty
parameter: memsize=1024
of_compatible: phytec,imx6x-pbab01 phytec,imx6dl-pfla02 fsl,imx6dl
model: Phytec phyFLEX-i.MX6 Duallite Carrier-Board

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-08-07 06:13:52 +02:00
Sascha Hauer 7b0d00c465 make: Use shell script to generate .dtb.S files
Using shell in make to generate an assembly file is not very
readable and extendable. Add an external shell script instead.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-08-07 06:13:52 +02:00
Sascha Hauer 0a1167029d dtc: compile fdtget
We need fdtget in subsequent patches, so compile it.
Unfortunately this is not straight forward. fdtget needs libfdt,
but the Kernel Build System is not prepared for compiling
libraries for the host or binaries from files in multiple directories.
This patch moves the libfdt files to the dtc toplevel directory and
compiles fdtget as a binary from multiple source files but from
the same directory.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-08-07 06:13:52 +02:00
Sascha Hauer fb60ba388b make: build device trees with obj-dtb-y and pbl-dtb-y
To build an object file from a device tree currently we currently
have to add them to the Makefile twice, once to dtb-y and once to
obj-y. This patch introduces obj-dtb-y and pbl-dtb-y to directly
compile a device tree object file for inclusion in the barebox binary
or the pbl respectively.
The now unneeded dtb-y targets are removed.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-08-07 06:13:52 +02:00
Antony Pavlov f708453459 ARM: add Canon A1100 ROM image generation
Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-08-01 15:40:41 +02:00
Juergen Borleis e805b7dcb0 saveenv: provide a zeroed/empty/ignore environment
If an external environment storage should be used in very rare and special cases,
the intentional behaviour should be to ignore the external environment and always
fall back to the built-in environment. By storing an empty "to be ignored" environment
into the external environment a confusing error message about invalid CRC sums will go
away and still the built-in environment is used.
With this new option we can force the intentional behaviour.

Signed-off-by: Juergen Borleis <jbe@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-08-01 08:24:00 +02:00
Juergen Borleis 72ce27f8e0 envfs: change API to be able to forward special flags into the envfs superblock
In order to be able to mark an stored envfs image with special features
(intentional ignore for example), we now can feed forward these flags.
By forwarding a '0' for the flags nothing changes because the envfs superblock
was already allocated with xzalloc.

Signed-off-by: Juergen Borleis <jbe@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-08-01 08:24:00 +02:00
Antony Pavlov 2671c30c25 scripts/checkpatch.pl: don't search for Doxyfile when checking top_of_kernel_tree()
Doxygen documentation is removed in the commit

  commit 98360be0fe
  Author: Sascha Hauer <s.hauer@pengutronix.de>
  Date:   Tue Jun 17 10:27:03 2014 +0200

      Documentation: remove doxygen documentation

But checkpatch.pl still trying to check 'Doxyfile' presence.
There is not such 'Doxyfile' and checkpatch.pl exits with
'Must be run from the top-level dir. of a kernel tree' message.

Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-07-22 22:07:29 +02:00
Sascha Hauer 8f184314dd kconfig: Fix compiler warning
gcc-4.9 is too silly to recognize that *jump cannot be used
uninitialized and issues a warning. Explicitly initialize
*jump to avoid the warning.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-07-05 13:33:25 +02:00
Sascha Hauer efa4d684d8 Merge branch 'for-next/misc'
Conflicts:
	arch/arm/boards/chumby_falconwing/falconwing.c
	arch/arm/boards/imx233-olinuxino/imx23-olinuxino.c
	arch/x86/mach-x86.dox
	scripts/setupmbr/setupmbr.c
2014-07-04 17:27:06 +02:00
Sascha Hauer b48241aabb scripts/setupmbr: remove doxygen docs
This text is now in Documentation/boards/x86.rst.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-07-03 09:08:05 +02:00
Lucas Stach a78452fd2d scripts: tegra: add gitignore
Keep the git status area clean of generated binaries.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-07-01 08:39:37 +02:00
Robert P. J. Day ac705a462f Fix misspellings of "persistant" -> "persistent" in various places
Fix misspellings of "persistent", including the renaming of a function
to "register_persistant_environment".

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-06-30 08:16:00 +02:00
Sascha Hauer 98360be0fe Documentation: remove doxygen documentation
The doxygen documentation is long outdated. Remove it. It will
be replaced with sphinx based documentation later.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-06-26 10:09:52 +02:00
Sascha Hauer bbc70303c7 kernel-install: fix return value check for getline
getline returns the number of characters read, so check for
ret < 0 instead of ret.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2014-06-26 09:44:47 +02:00
Sascha Hauer ad9f56888f Merge branch 'for-next/tegra' 2014-06-04 21:04:28 +02:00