Age | Commit message (Collapse) | Author |
|
This commit fixes a number of places where Doxygen groups commands have
been mismatched.
Change-Id: If2e18c5e45a9a5d16a5c1f48fdaa975189957400
Signed-off-by: Chris Kay <chris.kay@arm.com>
|
|
This commit replaces any instances of `@`-style Doxygen commands with
their `\`-style equivalents. This is done for consistency across the
codebase.
The `\sa` Doxygen command has been added to the Clang-Format
configuration to prevent it from reflowing see-also comments, which
often exceed the column limit due to referring to long URLs.
Change-Id: Ia4ebe8bd310293da9e2af55fe253f0762807e88a
Signed-off-by: Chris Kay <chris.kay@arm.com>
|
|
This commit adds a bootloading message to the bootloader module and
unifies the error messages in the `msys-rom` and `isys-rom` modules.
Change-Id: I69ab6e46af958c6b9c22f8578b2d253eb76bd137
Signed-off-by: Chris Kay <chris.kay@arm.com>
|
|
This commit replaces any calls to `fwk_assert(false)` with a call to
`fwk_unexpected()`. Forced assertions are used for two different
scenarios:
- Unreachable code, which should use `fwk_unreachable()`
- Code that should trap only in debug mode, which should use
`fwk_unexpected()`
`fwk_unexpected()` is the only one of these options with no side effects
that did not already occur in the original code, so these assertions
have been transformed to expectations. Some of these may, and should, be
transformed later to unreachable code.
Change-Id: I8325259b41a03a096b62a420bd0c7d52b025fcf4
Signed-off-by: Chris Kay <chris.kay@arm.com>
|
|
This commit replaces any call to `assert()` outside of the framework
with a call to `fwk_assert()`.
Change-Id: I83325af5892ac6b8b6b66a6586345d0988ca725e
Signed-off-by: Chris Kay <chris.kay@arm.com>
|
|
This commit moves the message logging functionality, previously only
available through the logging module, into the framework as a
free-function interface.
A number of improvements to this interface have been made, owing to the
tighter integration this new interface has with the framework and its
scheduler:
- Simplistic synchronous logging can be enabled before the framework
has fully initialized
- Message logging may be filtered at preprocessing-time to reduce
the size of the code and read-only data sections in the firmware
binary
- Logging is deprioritized at runtime to reduce response latency caused
by logging to output devices
Change-Id: I5112df359df8a304a176e68994e2408d91f6ac89
Signed-off-by: Chris Kay <chris.kay@arm.com>
|
|
This commit introduces the ability to filter logs based on their
criticality. Log messages that do not exceed the configured criticality
are removed at preprocessing time.
This, in turn, allows us to remove logging calls that do not meet the
criticality requirement, reducing the size of the executable image and
increasing the performance of release images.
Change-Id: I56e14175b67a3e4e68fd03b8e457a802192898d1
Signed-off-by: Chris Kay <chris.kay@arm.com>
|
|
This commit cleans up include directives across the project to reduce
the number of implicit transitive dependencies in preparation for mass
header changes in the logging patches later on.
These changes were made using two tools: clang-include-fixer and
include-what-you-use, which identify and remove headers that are
unnecessary, and insert headers which are used but not referenced. Some
manual tweaking was involved to handle special cases, like #ifdef'd
includes.
Includes have also been reordered and categorized according to their
project locality, and non-module includes now use quotes rather than
angle brackets.
Change-Id: Id39dc473f44b73cb98f3b8949f9e768fd2ace6cd
Signed-off-by: Chris Kay <chris.kay@arm.com>
|
|
The RAM firmware image is loaded from the beginning of SRAM, which
overlaps read/write data used by the ROM firmware. This has the
potential to corrupt ROM runtime data that is still being loaded in and
out of memory while it is preparing to boot the image.
This patch removes the image booting logic from the `msys_rom` and
`juno_rom` modules and moves it to the `bootloader` module to ensure
that the transfer is properly and safely contained and controlled.
Other changes to reduce exploitability including updating the stack
pointer to the one expected by the RAM firmware rather than permitting
it to continue from where the ROM firmware left off, and relocating the
vector table to the one embedded in the RAM firmware image, which
prevents the core from using the exception handlers created during ROM
boot (which are in the heap and may have been corrupted while loading
the RAM firmware).
Change-Id: I4413c1cd058ca93ef04177424f1f29561b10872f
Signed-off-by: Chris Kay <chris.kay@arm.com>
|
|
All the relevant headers in files have been updated to 2020.
Change-Id: I8ef14a4c87b65c87933ef79697dcb5fc5dda87d4
Signed-off-by: Nicola Mazzucato <nicola.mazzucato@arm.com>
|
|
In preparation for a change to fwk_notification_notify
a source_id is explicitly provided for notifications.
Change-Id: Ib10d09ad92d9ed5de35983cf93df83cf2db3f7f7
Signed-off-by: Nicola Mazzucato <nicola.mazzucato@arm.com>
|
|
This patch renames the header file for the return
values to fwk_status.h. This is to reflect the recent
addition of positive values that do not fall into
the error category.
Change-Id: I283b945c39d3ad31702db0dc7687dbe99e81ed19
Signed-off-by: Nicola Mazzucato <nicola.mazzucato@arm.com>
|
|
Change-Id: I73e35e5caa53544c7f3bcb0097f2ad79fb0e2122
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
|
|
The headers these constructs belong in were introduced with C11
standard library, but don't appear to be supported by the Arm Compiler
6's. We work around this by implementing them ourselves.
Change-Id: I601701c0a8e2b5df02e7c2c95c5b0667aac6cff4
Signed-off-by: Chris Kay <chris.kay@arm.com>
|
|
This commit moves all inclusions of <assert.h> into <fwk_assert.h>,
which now includes it instead. This allows us to keep all assert-related
logic under one roof.
Change-Id: I4ec0d950dfd9264733645bc14da952b8c1619501
Signed-off-by: Chris Kay <chris.kay@arm.com>
|
|
Co-authored-by: Filipe Rinaldi <filipe.rinaldi@arm.com>
Co-authored-by: Paul Beesley <paul.beesley@arm.com>
Co-authored-by: Chris Kay <chris.kay@arm.com>
Co-authored-by: Elieva Pignat <elieva.pignat@arm.com>
Co-authored-by: Pedro Custodio <pedro.krewinkelcustodio@arm.com>
Change-Id: Ic7524ad58a7c15d5b055e88a9719b2feee437f1d
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
|