refactor(libc): clean up dependencies in libc- Removing platform dependencies from libc modules.- Replacing panicking with actual error handling.- Debug macros are included indirectly from assert
refactor(libc): clean up dependencies in libc- Removing platform dependencies from libc modules.- Replacing panicking with actual error handling.- Debug macros are included indirectly from assert.h. Removing "platform_def.h" from assert.h and adding "common/debug.h" where the macros are used.- Removing hack for fixing PLAT_LOG_LEVEL_ASSERT to 40. Instead removing assert with expression, as this does not provide additional information.Signed-off-by: Claus Pedersen <claustbp@google.com>Change-Id: Icc201ea7b63c1277e423c1cfd13fd6816c2bc568
show more ...
sp_min: make sp_min_warm_entrypoint publicSimilar to bl31_warm_entrypoint, sp_min-based platforms may needthat for special resume handling.Therefore move it from the private header to the sp_min
sp_min: make sp_min_warm_entrypoint publicSimilar to bl31_warm_entrypoint, sp_min-based platforms may needthat for special resume handling.Therefore move it from the private header to the sp_min platform header.Signed-off-by: Heiko Stuebner <heiko@sntech.de>Change-Id: I40d9eb3ff77cff88d47c1ff51d53d9b2512cbd3e
Standardise header guards across codebaseAll identifiers, regardless of use, that start with two underscores arereserved. This means they can't be used in header guards.The style that this proje
Standardise header guards across codebaseAll identifiers, regardless of use, that start with two underscores arereserved. This means they can't be used in header guards.The style that this project is now to use the full name of the file incapital letters followed by 'H'. For example, for a file called"uart_example.h", the header guard is UART_EXAMPLE_H.The exceptions are files that are imported from other projects:- CryptoCell driver- dt-bindings folders- zlib headersChange-Id: I50561bf6c88b491ec440d0c8385c74650f3c106eSigned-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
Remove deprecated early platform setup interfacesThe affected interfaces are bl31_early_platform_setup(),sp_min_early_platform_setup() and bl2_early_platform_setup().Change-Id: I50c01ec68bcbe97f
Remove deprecated early platform setup interfacesThe affected interfaces are bl31_early_platform_setup(),sp_min_early_platform_setup() and bl2_early_platform_setup().Change-Id: I50c01ec68bcbe97fe4e5d101bcd0f763358b8e1eSigned-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
Introduce the new BL handover interfaceThis patch introduces a new BL handover interface. It essentially allowspassing 4 arguments between the different BL stages. Effort has been madeso as to be
Introduce the new BL handover interfaceThis patch introduces a new BL handover interface. It essentially allowspassing 4 arguments between the different BL stages. Effort has been madeso as to be compatible with the previous handover interface. The previousblx_early_platform_setup() platform API is now deprecated and the newblx_early_platform_setup2() variant is introduced. The weak compatiblityimplementation for the new API is done in the `plat_bl_common.c` file.Some of the new arguments in the new API will be reserved for genericcode use when dynamic configuration support is implemented. Otherwisethe other registers are available for platform use.Change-Id: Ifddfe2ea8e32497fe1beb565cac155ad9d50d404Signed-off-by: Soby Mathew <soby.mathew@arm.com>
bl32: add secure interrupt handling in AArch32 sp_minAdd support for a minimal secure interrupt service in sp_min forthe AArch32 implementation. Hard code that only FIQs are handled.Introduce bo
bl32: add secure interrupt handling in AArch32 sp_minAdd support for a minimal secure interrupt service in sp_min forthe AArch32 implementation. Hard code that only FIQs are handled.Introduce bolean build directive SP_MIN_WITH_SECURE_FIQ to enableFIQ handling from SP_MIN.Configure SCR[FIQ] and SCR[FW] from generic code for both cold andwarm boots to handle FIQ in secure state from monitor.Since SP_MIN architecture, FIQ are always trapped when system executesin non secure state. Hence discard relay of the secure/non-securestate in the FIQ handler.Change-Id: I1f7d1dc7b21f6f90011b7f3fcd921e455592f5e7Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
sp_min: Implement `sp_min_plat_runtime_setup()`On ARM platforms before exiting from SP_MIN ensure thatthe default console is switched to the runtime serial port.Change-Id: I0ca0d42cc47e345d56179
sp_min: Implement `sp_min_plat_runtime_setup()`On ARM platforms before exiting from SP_MIN ensure thatthe default console is switched to the runtime serial port.Change-Id: I0ca0d42cc47e345d56179eac16aa3d6712767c9bSigned-off-by: Dimitris Papastamos <dimitris.papastamos@arm.com>
Use SPDX license identifiersTo make software license auditing simpler, use SPDX[0] licenseidentifiers instead of duplicating the license text in every file.NOTE: Files that have been imported by
Use SPDX license identifiersTo make software license auditing simpler, use SPDX[0] licenseidentifiers instead of duplicating the license text in every file.NOTE: Files that have been imported by FreeBSD have not been modified.[0]: https://spdx.org/Change-Id: I80a00e1f641b8cc075ca5a95b10607ed9ed8761aSigned-off-by: dp-arm <dimitris.papastamos@arm.com>
AArch32: Support in SP_MIN to receive arguments from BL2This patch adds support in SP_MIN to receive generic andplatform specific arguments from BL2.The new signature is as following: void s
AArch32: Support in SP_MIN to receive arguments from BL2This patch adds support in SP_MIN to receive generic andplatform specific arguments from BL2.The new signature is as following: void sp_min_early_platform_setup(void *from_bl2, void *plat_params_from_bl2);ARM platforms have been modified to use this support.Note: Platforms may break if using old signature. Default value for RESET_TO_SP_MIN is changed to 0.Change-Id: I008d4b09fd3803c7b6231587ebf02a047bdba8d0
AArch32: add a minimal secure payload (SP_MIN)This patch adds a minimal AArch32 secure payload SP_MIN. It relies on PSCIlibrary to initialize the normal world context. It runs in Monitor modeand
AArch32: add a minimal secure payload (SP_MIN)This patch adds a minimal AArch32 secure payload SP_MIN. It relies on PSCIlibrary to initialize the normal world context. It runs in Monitor modeand uses the runtime service framework to handle SMCs. It is added asa BL32 component in the Trusted Firmware source tree.Change-Id: Icc04fa6b242025a769c1f6c7022fde19459c43e9