fix(gic): init the GIC before the platform with a hookWhile GIC setup is generic across platforms, its usage is not. Someplatforms won't use it at EL3, while others need to configure interrupts(l
fix(gic): init the GIC before the platform with a hookWhile GIC setup is generic across platforms, its usage is not. Someplatforms won't use it at EL3, while others need to configure interrupts(like RAS) in the standard platform hooks. To do that, the GIC needs tobe set up and ready to use before calling the platform hooks butcurrently that is only done after. Annoyingly, a handful of platformsneed to set their GIC up before initialising it necessitating theplatform hooks to be called before GIC init.This patch resolves this contradiction by moving the general GIC setupcalls to before the platform hooks and adding a GIC-specific platformhook just before GIC per CPU init. This way both types of platforms cando their business at the same time.Change-Id: I361f587ab4603162ee880addb074800cbbb97b49Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
show more ...
refactor: convert arm platforms to use the generic GIC driverThis reduces the code the platforms have to carry and makes their buildrules a bit simpler.The main benefit is that plat_my_core_pos(
refactor: convert arm platforms to use the generic GIC driverThis reduces the code the platforms have to carry and makes their buildrules a bit simpler.The main benefit is that plat_my_core_pos() no longer needs to be calledwithin the driver, helping with performance a bit.Change-Id: I0b0d1d36d20d67c41c8c9dc14ade11bda6d4a6afSigned-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
refactor(arm): simplify early platform setup functionsRefactor `arm_sp_min_early_platform_setup` to accept generic`u_register_r` values to support receiving firmware handoff bootarguments in comm
refactor(arm): simplify early platform setup functionsRefactor `arm_sp_min_early_platform_setup` to accept generic`u_register_r` values to support receiving firmware handoff bootarguments in common code. This has the added benefit of simplifying theinterface into common early platform setup.Change-Id: Idfc3d41f94f2bf3a3a0c7ca39f6b9b0013836e3aSigned-off-by: Harrison Mutai <harrison.mutai@arm.com>
corstone700: splitting the platform support into FVP and FPGAThis patch performs the following:- Creating two corstone700 platforms under corstone700 board: fvp and fpga- Since the FVP and F
corstone700: splitting the platform support into FVP and FPGAThis patch performs the following:- Creating two corstone700 platforms under corstone700 board: fvp and fpga- Since the FVP and FPGA have IP differences, this commit provides a specific DTS for each platform- The platform can be specified using the TARGET_PLATFORM Makefile variable(possible values are: fvp or fpga)- Allowing to use u-boot by: - Enabling NEED_BL33 option - Fixing non-secure image base: For no preloaded bl33 we want to have the NS base set on shared ram. Setup a memory map region for NS in shared map and set the bl33 address in the area.- Setting the SYS_COUNTER_FREQ_IN_TICKS based on the selectedplatform- Setting ARM_MAP_SHARED_RAM and ARM_MAP_NS_SHARED_RAM to use MT_MEMORYChange-Id: I4c8ac3387acb1693ab617bcccab00d80e340c163Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org>Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com>
corstone700: adding support for stack protector for the FVPAdding support for generating a semi-random number required forenabling building TF-A with stack protector support.TF-A for corstone-700
corstone700: adding support for stack protector for the FVPAdding support for generating a semi-random number required forenabling building TF-A with stack protector support.TF-A for corstone-700 may now be built using ENABLE_STACK_PROTECTOR=allChange-Id: I03e1be1a8d4e4a822cf286f3b9ad4da4337ca765Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com>
plat/arm: Introduce corstone700 platform.This patch adds support for Corstone-700 foundation IP, which integratesboth Cortex-M0+ and Cortex-A(Host) processors in one handy, flexiblesubsystem.Thi
plat/arm: Introduce corstone700 platform.This patch adds support for Corstone-700 foundation IP, which integratesboth Cortex-M0+ and Cortex-A(Host) processors in one handy, flexiblesubsystem.This is an example implementation of Corstone-700 IP host firmware.Cortex-M0+ will take care of boot stages 1 and 2(BL1/BL2) as well asbringing Host out RESET. Host will start execution directly from BL32 andthen will jump to Linux.It is an initial port and additional features are expected to be addedlater.Change-Id: I7b5c0278243d574284b777b2408375d007a7736eSigned-off-by: Manish Pandey <manish.pandey2@arm.com>