1b4315306SDan Handley/* 2*0204bc8cSBoyan Karatotev * Copyright (c) 2015-2025, Arm Limited and Contributors. All rights reserved. 3b4315306SDan Handley * 482cb2c1aSdp-arm * SPDX-License-Identifier: BSD-3-Clause 5b4315306SDan Handley */ 6c3cf06f1SAntonio Nino Diaz#ifndef CSS_MACROS_S 7c3cf06f1SAntonio Nino Diaz#define CSS_MACROS_S 8b4315306SDan Handley 9b4315306SDan Handley#include <arm_macros.S> 10b4315306SDan Handley#include <platform_def.h> 11b4315306SDan Handley 12b4315306SDan Handley /* --------------------------------------------- 13b4315306SDan Handley * The below required platform porting macro 14b4315306SDan Handley * prints out relevant GIC registers whenever an 15d178637dSJuan Castillo * unhandled exception is taken in BL31. 16b4315306SDan Handley * Clobbers: x0 - x10, x16, x17, sp 17b4315306SDan Handley * --------------------------------------------- 18b4315306SDan Handley */ 199ff67fa6SGerald Lejeune .macro css_print_gic_regs 2027573c59SAchin Gupta mov_imm x16, PLAT_ARM_GICD_BASE 21*0204bc8cSBoyan Karatotev /* 22*0204bc8cSBoyan Karatotev * The ID registers will show GIC version, so it can safely be assumed 23*0204bc8cSBoyan Karatotev * that no v2 operation will be attempted on v3. Don't require the 24*0204bc8cSBoyan Karatotev * macro. 25*0204bc8cSBoyan Karatotev */ 26*0204bc8cSBoyan Karatotev#if USE_GIC_DRIVER == 2 2727573c59SAchin Gupta mov_imm x17, PLAT_ARM_GICC_BASE 28*0204bc8cSBoyan Karatotev#endif 29b4315306SDan Handley arm_print_gic_regs 30b4315306SDan Handley .endm 31b4315306SDan Handley 32c3cf06f1SAntonio Nino Diaz#endif /* CSS_MACROS_S */ 33