1f91c3cb1SSiva Durga Prasad Paladugu /* 2619bc13eSMichal Simek * Copyright (c) 2018-2021, Arm Limited and Contributors. All rights reserved. 3f91c3cb1SSiva Durga Prasad Paladugu * 4f91c3cb1SSiva Durga Prasad Paladugu * SPDX-License-Identifier: BSD-3-Clause 5f91c3cb1SSiva Durga Prasad Paladugu */ 609d40e0eSAntonio Nino Diaz 709d40e0eSAntonio Nino Diaz #include <plat/common/platform.h> 809d40e0eSAntonio Nino Diaz 9*01a326abSPrasad Kummari #include <plat_private.h> 10*01a326abSPrasad Kummari 11912b7a6fSVenkatesh Yadav Abbarapu int32_t plat_core_pos_by_mpidr(u_register_t mpidr) 12f91c3cb1SSiva Durga Prasad Paladugu { 13a62c40d4SAbhyuday Godhasara if ((mpidr & MPIDR_CLUSTER_MASK) != 0U) { 14f91c3cb1SSiva Durga Prasad Paladugu return -1; 15e43258faSVenkatesh Yadav Abbarapu } 16f91c3cb1SSiva Durga Prasad Paladugu 17e43258faSVenkatesh Yadav Abbarapu if ((mpidr & MPIDR_CPU_MASK) >= PLATFORM_CORE_COUNT) { 18f91c3cb1SSiva Durga Prasad Paladugu return -1; 19e43258faSVenkatesh Yadav Abbarapu } 20f91c3cb1SSiva Durga Prasad Paladugu 21912b7a6fSVenkatesh Yadav Abbarapu return (int32_t)versal_calc_core_pos(mpidr); 22f91c3cb1SSiva Durga Prasad Paladugu } 23