Commit Graph

23 Commits

Author SHA1 Message Date
Eugen Hristev
d98b5df418 boot/at91bootstrap3: add BR2_TARGET_AT91BOOTSTRAP3_NEEDS_PYTHON3
Some at91bootstrap3 configurations now use Python scripts on the host
for NAND/PMEC related utilities. In order to be able to use those
scripts, this commit adds a new
BR2_TARGET_AT91BOOTSTRAP3_NEEDS_PYTHON3 which allows to express the
need for host-python3 as a dependency to build at91bootstrap3.

Signed-off-by: Eugen Hristev <eugen.hristev@microchip.com>
[Thomas: this was extracted from a patch from Eugen adding
at91bootstrap 4.x support.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2021-05-19 11:21:00 +02:00
Eugen Hristev
e009816c67 boot/at91bootstrap3: add support for at91bootstrap 4.x series
The project at https://github.com/linux4sam/at91bootstrap was until
now releasing 3.x versions, which were packaged using
boot/at91bootstrap3/ in Buildroot. Microchip has now started a new
branch of at91bootstrap, called 4.x, which will only support the
following devices: sam9x60, sama5d2, sama5d3, sama5d4, sama7g5. A
number of older devices from Microchip will only be supported by the
existing 3.x series.

Therefore, we cannot simply remove support for the 3.x series, and
allow using only the 4.x series.

So what this commit does is extend the boot/at91bootstrap3 package to
support building both 3.x and 4.x versions. In detail, this implies:

 * Having the BR2_TARGET_AT91BOOTSTRAP3_LATEST_VERSION symbol point to
   the latest 4.x version. Indeed, we want
   BR2_TARGET_AT91BOOTSTRAP3_LATEST_VERSION to really point to the
   latest upstream version, even if that means potential breakage for
   users. Users who want to use a fixed version of at91bootstrap
   should anyway not be using
   BR2_TARGET_AT91BOOTSTRAP3_LATEST_VERSION.

 * Introduce BR2_TARGET_AT91BOOTSTRAP3_LATEST_VERSION_3X for users who
   would like to use the latest 3.x series.

 * Adjust the installation logic, as images to install are now in
   build/binaries/*.bin instead of binaries/*.bin. In order to not
   have to differentiate 3.x and 4.x, we simply use $(wildcard ...) to
   expand the list of files to install.

 * To make it clear that boot/at91bootstrap3 supports both 3.x and
   4.x, we also update the prompt of the package.

at911bootstrap does not carry a license file; so far we were using
main.c as the license file, as it carries the license blurb. Now that we
have a known alternate version, we would need a per-version hash for
that file. However, this is a bit too cumbersome to handle, so just drop
using main.c as the license file. When upstream introduces a proper
license file, we can revisit the situation.

Update the two defconfigs that were using the upstream 3.9.3 version;
all other defconfigs are using custom tarballs or custom git trees.

Signed-off-by: Eugen Hristev <eugen.hristev@microchip.com>
[Thomas: while this patch is based on previous work by Eugen, it was
reworked quite significantly.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
[yann.morin.1998@free.fr:
  - drop main.c as license file, explain why
  - update the two defconfigs
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2021-05-19 11:15:29 +02:00
Fabrice Fontaine
0aa8533213 boot/at91bootstrap3: add CPE variables
cpe:2.3🅰️linux_sam:at91bootstrap is a valid CPE identifier for this
package:

  https://nvd.nist.gov/products/cpe/search/results?namingFormat=2.3&keyword=cpe%3A2.3%3Aa%3Alinux_sam%3Aat91bootstrap

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2021-01-23 21:34:38 +01:00
Yann E. MORIN
130329cb7b boot/at91bootstrap3: license files hashes only valid for latest version
We can only know the details of the license files for known versions.  For
custom, older or newer versions, the license files may change, or may be
moved around.

So, do for at91bootstrap3 as was done for other packages in the recent
past, and only define the list of license files for the latest version.

Reported-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Markus Mayer <mmayer@broadcom.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-02-06 20:38:13 +01:00
Eugen Hristev
1fc1a2946a boot/at91bootstrap3: implement custom tarball download
Implement possibility to download AT91Bootstrap from a custom tarball
URL.

Signed-off-by: Eugen Hristev <eugen.hristev@microchip.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-12-23 23:22:30 +01:00
Arnout Vandecappelle
41b06126c9 at91bootstrap3: exclude from hash when downloading from git
Since we will enable hash checks for git downloads soon, the hash check
for the custom git download should be disabled.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-06-11 14:27:42 +02:00
Yann E. MORIN
d831f24964 Fix fallout after generated defconfig support
Fix improper use of qstrip; use correct variables.

Fixes #8546.

Reported-by: craigswank@gmail.com
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-12-23 09:54:14 +01:00
Sam bobroff
3f971789e2 boot/at91bootstrap3: handle generated defconfigs
Signed-off-by: Sam Bobroff <sam.bobroff@au1.ibm.com>
[yann.morin.1998@free.fr: move the kconfig-package hunk to the
 corresponding patch]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-12-22 22:39:50 +01:00
Yann E. MORIN
5e94388c57 boot/at91boostrap3: check for config file before calling kconfig-package
If we check that the user provides a config file after we call to the
kconfig-package infra, the error message we get is the one for the
kconfig-package infra, not the custom error message we want to show to
the user.

So, only call kconfig-package after we do the check.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-07-14 10:30:30 +02:00
Angelo Compagnucci
c839605ff0 boot/at91bootstrap3: download via custom git url
This patch adds the option to download at91bootstrap3 from
a custom git URL. This is a requirement for all that boards
that use a custom at91bootstrap3 version.

Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-06-14 23:42:48 +02:00
Angelo Compagnucci
b3d4c6a6fb boot/at91bootstrap3: bump to version 3.7.2
This patch bumps at91bootstrap3 version to 3.7.2

Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-06-14 23:41:43 +02:00
Angelo Compagnucci
5c4d325db4 boot/at91bootstrap3: add license information
This patch adds licensing informations to at91bootstrap3

[Thomas:
 - change from "BSD-2c with endorsement clause" to "Atmel License",
   because the license of AT91Bootstrap is neither a BSD-2c nor a
   BSD-3c: it does not carry the second clause of the BSD-2c or BSD-3c
   licenses giving the condition of redistribution of the binary form.]

Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-06-14 23:40:36 +02:00
Thomas Petazzoni
fa6289bb1a packages: refactor checks using BR_BUILDING
Instead of manually testing MAKECMDGOALS, use the newly introduced
BR_BUILDING variable to know if we're building or not.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2015-04-26 21:43:25 +02:00
Thomas Petazzoni
7a03f0c89d at91bootstrap3: make sure AT91BOOTSTRAP3_KCONFIG_FILE is always defined
For some (silly?) reason, the kconfig-package infra always wants
<pkg>_KCONFIG_FILE to be defined. So let's do like barebox does: use a
temporary AT91BOOTSTRAP3_SOURCE_CONFIG variable, and assign it to
AT91BOOTSTRAP3_KCONFIG_FILE. This way, the latter is always defined,
even if to the empty value.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-04-06 23:41:18 +02:00
Mauro Condarelli
2016cb30f1 boot/at91bootstrap3: migrate to pkg-kconfig
In at91bootstrap3, defconfig files are spread out in various
sub-directories, so we can't easily construct the path to those
defconfig files.

As it turns out, there are no two defconfig files named the same; they
all contain at least the board name, plus some extra info. And there is
always only one directory depth below board/ where all defconfig files
are to be found.

Also, at91bootstrap3's own Makefile relies on this single-match as it
runs a 'find' command to locate the defconfig file.

So, even though we do not know the path to the defconfig file, we can
construct a shell-glob quite easily (in the hope that there will never
be more than one directory depth).

Signed-off-by: Mauro Condarelli <mc5686@mclink.it>
[yann.morin.1998@free.fr:
  - remove custom _CONFIGURE_CMDS, handled by pkg-kconfig  (Thomas)
  - remove redundant intermediate variable
  - fix using internal defconfig files
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-04-06 23:30:48 +02:00
Thomas Petazzoni
0eba4759fa packages: apply custom patches using *.patch instead of <pkg>-*.patch
Several packages have some logic to apply custom patches that existed
before the BR2_GLOBAL_PATCH_DIR mechanism: at91bootstrap,
at91bootstrap3, barebox, uboot and linux. Currently, the logic of
those packages to apply custom patches is to match
<package-name>-*.patch, which is not consistent with what we've done
for patches stored in the package directory, and for patches stored in
BR2_GLOBAL_PATCH_DIR: in such cases, we simply apply *.patch.

Therefore, for consistency reasons, this commit changes these packages
to also apply *.patch.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2015-04-06 11:04:59 +02:00
Angelo Compagnucci
b2b5425a07 boot/at91bootstrap3: bump to v3.7.1
Change to use the _defconfig targets of at91bootstrap3 build system
when a defconfig is used.

[Thomas: adjust to make a better use of at91bootstrap3 defconfig
mechanism.]

Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-12-07 23:00:34 +01:00
Fabio Porcedda
1586ce3a3d apply-patches.sh: Use the "APPLY_PATCHES" variable to call the script
To easy up adding optional parameters when calling the
"apply-patches.sh" add and use the "APPLY_PATCHES" variable to execute
the script.

Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-10-25 01:31:32 +02:00
Thomas De Schampheleire
0518a98ac3 packages: rename FOO_MAKE_OPT into FOO_MAKE_OPTS
While the autotools infrastructure was using FOO_MAKE_OPT, generic packages
were typically using FOO_MAKE_OPTS. This inconsistency becomes a problem
when a new infrastructure is introduced that wants to make use of
FOO_MAKE_OPT(S), and can live alongside either generic-package or
autotools-package. The new infrastructure will have to choose between either
OPT or OPTS, and thus rule out transparent usage by respectively generic
packages or generic packages. An example of such an infrastructure is
kconfig-package, which provides kconfig-related make targets.

The OPTS variant is more logical, as there are typically multiple options.

This patch renames all occurrences of FOO_MAKE_OPT in FOO_MAKE_OPTS.
Sed command used:
    find * -type f | xargs sed -i 's#_MAKE_OPT\>#&S#g'

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-10-04 15:07:23 +02:00
Thomas Petazzoni
23a94e9d67 at91bootstrap3: bump to v3.6.2
In preparation to add support for the SAMA5D3 Xplained board, this
commit bumps the version of the at91bootstrap3 bootloader to
v3.6.2. While doing this, it also:

 - Allows this bootloader on Cortex-A5 based platforms, since SAMA5D3
   are based on Cortex-A5.

 - Removes a patch that no longer applies, and which has been taken
   into account in at91bootstrap3 upstream.

 - Switches to the upstream Github location as the source.

 - Updates the installation commands to match upstream changes in the
   installation process.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-06-29 10:54:08 +02:00
Jerzy Grzegorek
086f333f39 Normalize separator size to 80
Signed-off-by: Jerzy Grzegorek <jerzy.grzegorek@trzebnica.net>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-06-07 10:54:54 +02:00
Alexandre Belloni
702704014d Fix package headers to comply with coding style
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-06-06 17:26:35 +02:00
Simon Dawson
ca0d69c61c at91bootstrap3: new package
Note that this new package, at91bootstrap3, is being added alongside the
existing at91bootstrap. This was suggested by Thomas Petazzoni, whose
comments on the mailing list are quoted below.

  For this package, I am not sure we can do a simple version bump. Since
  there is (was?) no upstream for AT91Bootstrap 1.x, many
  vendors/companies had to maintain their patches on top of AT91Bootstrap
  1.x. See for example
  board/calao/usb-a9263/at91bootstrap-1.16-usb-a9263.patch. Therefore,
  removing AT91Bootstrap 1.x from the tree will prevent those platforms
  to work. I know people should upgrade, but AT91Bootstrap 3.x is quite
  significantly different, so the porting effort is not that simple.

  Therefore, I'm wondering whether we should kee at91bootstrap as it is,
  and create a separate package at91bootstrap3 for the 3.x generation.

Signed-off-by: Simon Dawson <spdawson@gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-08-17 17:58:16 +02:00