xref: /rk3399_ARM-atf/plat/xilinx/versal/plat_versal.c (revision 890781d10ce362150359c00b06c8b7e9e1ee34d2)
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 
901a326abSPrasad Kummari #include <plat_private.h>
1001a326abSPrasad Kummari 
11912b7a6fSVenkatesh Yadav Abbarapu int32_t plat_core_pos_by_mpidr(u_register_t mpidr)
12f91c3cb1SSiva Durga Prasad Paladugu {
13*890781d1SMaheedhar Bollapalli 	int32_t ret = -1;
14*890781d1SMaheedhar Bollapalli 
15*890781d1SMaheedhar Bollapalli 	if (((mpidr & MPIDR_CLUSTER_MASK) == 0U) &&
16*890781d1SMaheedhar Bollapalli 	       ((mpidr & MPIDR_CPU_MASK) < PLATFORM_CORE_COUNT)) {
17*890781d1SMaheedhar Bollapalli 		ret = versal_calc_core_pos(mpidr);
18e43258faSVenkatesh Yadav Abbarapu 	}
19f91c3cb1SSiva Durga Prasad Paladugu 
20*890781d1SMaheedhar Bollapalli 	return ret;
21f91c3cb1SSiva Durga Prasad Paladugu }
22