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>
plat/arm: Introduce FVP Versatile Express platform.This patch adds support for Versatile express FVP (Fast models).Versatile express is a family of platforms that are based on ARM v7.Currently th
plat/arm: Introduce FVP Versatile Express platform.This patch adds support for Versatile express FVP (Fast models).Versatile express is a family of platforms that are based on ARM v7.Currently this port has only been tested on Cortex A7, although itshould work with other ARM V7 cores that support LPAE, generic timers,VFP and hardware divide. Future patches will support othercores like Cortex A5 that dont support features like LPAEand hardware divide. This platform is tested on and only expected towork on single core models.Change-Id: I10893af65b8bb64da7b3bd851cab8231718e61ddSigned-off-by: Usama Arif <usama.arif@arm.com>