Since the implementation is closer to a generic Cortex-M implementation,
rename pw_boot_armv7m to pw_boot_cortex_m, and add a core-specific
target named "armv7m".
This matches pw_cpu_exception_cortex_m.
Toolchain definitions will need ot be changed from:
pw_boot_BACKEND = dir_pw_boot_armv7m
to
pw_boot_BACKEND = "$dir_pw_boot_cortex_m:arm7vm"
Change-Id: Id6f4bbf8e6c1ec89afa63de7c93be1f3afa59f09
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/54242
Commit-Queue: Scott James Remnant <keybuk@google.com>
Pigweed-Auto-Submit: Scott James Remnant <keybuk@google.com>
Reviewed-by: Keir Mierle <keir@google.com>
The "# gn-format disable" comments are no longer necessary. Delete these
comments and reformat with a Vim macro and gn format.
Change-Id: Ia62c40ad73eef91187d0d443d6e3b0fa723e5aa9
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/21380
Reviewed-by: Armando Montanez <amontanez@google.com>
Commit-Queue: Wyatt Hepler <hepler@google.com>
Alters the existing targets to use a boot.cc file instead of the
existing early_boot.c.
The name was updated to reflect the fact that it now contains a
pw_boot_PostMain() hook which is after early boot.
C++ was selected over C to give more language flexibility.
Change-Id: I18ca0b8720bf083d4f644f1ca994e8fd7adc89b6
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/16702
Commit-Queue: Ewout van Bekkum <ewout@google.com>
Reviewed-by: Armando Montanez <amontanez@google.com>
Reviewed-by: Keir Mierle <keir@google.com>
Require targets to explicitly import pigweed variable definitions. This
moves out some necessary logic from the BUILDCONFIG.gn file.
Change-Id: If9c9fe5a680cc9d897a0e8a55889873be618ed84
This change replaces the implicit overrides of the default GN target
types in BUILDCONFIG.gn with explicit pw_* versions. This is done to
allow Pigweed to build within larger GN projects without modifying their
BUILDCONFIG files.
Change-Id: I1d1e41d5e9bde8fe076f7031f3c2b98b9630ff70
Adds pw_PreStaticConstructorInit() to allow ARMv7-M targets that use
pw_boot to perform initialization before C++ static constructors are
run. Updates stm32f429i-disc1 to enable FPU before static constructors
so static constructors can safely perform FPU operations if necessary.
Change-Id: I66cfa82096719f59c42c84e4bafd0e1740002e09