diff --git a/plat/arm/board/arm_fpga/fpga_pm.c b/plat/arm/board/arm_fpga/fpga_pm.c index 4c37217..a306a23 100644 --- a/plat/arm/board/arm_fpga/fpga_pm.c +++ b/plat/arm/board/arm_fpga/fpga_pm.c @@ -41,9 +41,13 @@ */ static int fpga_pwr_domain_on(u_register_t mpidr) { - unsigned int pos = plat_core_pos_by_mpidr(mpidr); + int pos = plat_core_pos_by_mpidr(mpidr); unsigned long current_mpidr = read_mpidr_el1(); + if (pos < 0) { + panic(); + } + if (mpidr == current_mpidr) { return PSCI_E_ALREADY_ON; }