kumquat-buildroot/boot/at91bootstrap3/Config.in

118 lines
3.4 KiB
Plaintext
Raw Normal View History

config BR2_TARGET_AT91BOOTSTRAP3
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-18 23:37:46 +02:00
bool "AT91 Bootstrap 3+"
depends on BR2_arm926t || BR2_cortex_a5 || BR2_cortex_a7
help
AT91Bootstrap is a first level bootloader for the Atmel AT91
devices. It integrates algorithms for:
- Device initialization such as clock configuration, PIO
settings...
- Peripheral drivers such as PIO, PMC or SDRAMC...
- Physical media algorithm such as DataFlash, NandFlash, NOR
Flash...
https://www.at91.com/linux4sam/bin/view/Linux4SAM/AT91Bootstrap
if BR2_TARGET_AT91BOOTSTRAP3
choice
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-18 23:37:46 +02:00
prompt "AT91 Bootstrap 3+ version"
config BR2_TARGET_AT91BOOTSTRAP3_LATEST_VERSION
bool "4.0.0"
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-18 23:37:46 +02:00
config BR2_TARGET_AT91BOOTSTRAP3_LATEST_VERSION_3X
bool "3.10.3"
config BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT
bool "Custom Git repository"
help
This option allows Buildroot to get the AT91 Bootstrap 3
source code from a Git repository.
config BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_SVN
bool "Custom SVN repository"
help
This option allows Buildroot to get the AT91 Bootstrap 3
source code from a Subversion repository
config BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_TARBALL
bool "Custom tarball"
endchoice
config BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_TARBALL_LOCATION
string "URL of custom AT91Bootstrap tarball"
depends on BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_TARBALL
if BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT || BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_SVN
config BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL
string "URL of custom repository"
config BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION
string "Custom repository version"
help
Revision to use in the typical format used by Git or SVN
E.G. a sha id, a tag, branch, ..
endif
config BR2_TARGET_AT91BOOTSTRAP3_VERSION
string
default "v4.0.0" if BR2_TARGET_AT91BOOTSTRAP3_LATEST_VERSION
default "v3.10.3" if BR2_TARGET_AT91BOOTSTRAP3_LATEST_VERSION_3X
default BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION \
if BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT || BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_SVN
default "custom" if BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_TARBALL
config BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_PATCH_DIR
string "custom patch dir"
help
If your board requires custom patches, add the path to the
directory containing the patches here. The patches must be
named at91bootstrap3-<something>.patch.
Most users may leave this empty
#
# Configuration selection
#
choice
prompt "AT91 Bootstrap 3 configuration"
default BR2_TARGET_AT91BOOTSTRAP3_USE_DEFCONFIG
config BR2_TARGET_AT91BOOTSTRAP3_USE_DEFCONFIG
bool "Using a defconfig"
config BR2_TARGET_AT91BOOTSTRAP3_USE_CUSTOM_CONFIG
bool "Using a custom config file"
endchoice
config BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG
string "Defconfig name"
depends on BR2_TARGET_AT91BOOTSTRAP3_USE_DEFCONFIG
help
Name of the at91bootstrap3 defconfig file to use, without the
trailing _defconfig. The defconfig is located at
board/<processor>/<board>_defconfig in the at91bootstrap3
tree.
config BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_CONFIG_FILE
string "Configuration file path"
depends on BR2_TARGET_AT91BOOTSTRAP3_USE_CUSTOM_CONFIG
help
Path to the at91bootstrap3 configuration file
config BR2_TARGET_AT91BOOTSTRAP3_NEEDS_PYTHON3
bool "needs host-python3"
help
Enable this option if the at91bootstrap build process needs
Python 3.x to be available on the host. This is needed in
some at91bootstrap configurations to use NAND/PMECC Python
scripts.
endif # BR2_TARGET_AT91BOOTSTRAP3