Also adjust the include path for the device tree. Since Linux 6.5-rc1
(724ba67515 "ARM: dts: Move .dts files to vendor sub-directories"),
sama5d31.dtsi lives in the microchip subdirectory.
Signed-off-by: Edgar Bonet <bonet@grenoble.cnrs.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
The updated device tree is provided by Acme Systems:
https://www.acmesystems.it/compile_kernel_5_15
It is released under GPLv2 or later.
Signed-off-by: Edgar Bonet <bonet@grenoble.cnrs.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
AT91Bootstrap 3.10.2 has a bug in its Makefile:[1] it gives the
-nostartfiles flag to the ld command, although this is a gcc flag, not
an ld flag. The bug happens to be harmless when using binutils 2.35.
However, the ld shipped with binutils 2.36 is more strict in its option
parsing, and fails with the following error:
.../output/host/bin/arm-buildroot-linux-uclibcgnueabihf-ld:
Error: unable to disambiguate: -nostartfiles
(did you mean --nostartfiles ?)
The bug was fixed upstream in commit 3207586a.[2] However, since there
has been no tagged 3.x release since then, we just upgrade to the
current head of the branch at91bootstrap-3.x.
Fixes:
https://gitlab.com/buildroot.org/buildroot/-/jobs/1478738145https://gitlab.com/buildroot.org/buildroot/-/jobs/1478738152
[1] https://github.com/linux4sam/at91bootstrap/issues/127
[2] 3207586a79
Signed-off-by: Edgar Bonet <bonet@grenoble.cnrs.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
The new branch "4.x" of at91bootstrap has dropped the contrib directory,
which holds the defconfigs used by the Acmesystems Acqua A5 boards. We
then cannot use the latest at91bootstrap anymore.
As commit e009816c67 introduced support
for at91bootstrap 4.x in the "next" branch, it had to work around this
by pinning these defconfigs to the "latest 3.x" version.
Avoid this and any future incompatibility problems by explicitly
requesting a tested version of at91bootstrap.
Signed-off-by: Edgar Bonet <bonet@grenoble.cnrs.fr>
[yann.morin.1998@free.fr: use a custom git, like other acme defconfigs]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
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>
The Acqua A5 is a system on module based on the Microchip SAMA5D31 SoC:
https://www.acmesystems.it/acqua
It is available in both 256 MiB and 512 MiB versions, hence the two
defconfig files. These configs build microSD card images with:
- AT91Bootstrap 3
- Linux 5.4.107
- default buildroot packages (uClibc, Busybox)
The device tree blob comes from Acme Systems:
https://github.com/AcmeSystems/dts-archive
It is licensed under GPLv2 or later.
Signed-off-by: Edgar Bonet <bonet@grenoble.cnrs.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>