1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Copyright (c) 2024 9elements GmbH
4  */
5 
6 /**
7  * smc_get_mpidr() - Call into SMC and get the MPIDR for given CPU
8  *
9  * @id:		CPU index
10  * @mpidr:	Pointer where to place the MPIDR
11  * @return 0 if OK, other -ve on error
12  */
13 int smc_get_mpidr(unsigned long id, u64 *mpidr);
14 
15 /**
16  * smc_get_gic_dist_base() - Call into SMC and get GIC dist base address
17  *
18  * @mpidr:	Pointer where to place the base address
19  * @return 0 if OK, other -ve on error
20  */
21 int smc_get_gic_dist_base(u64 *base);
22 
23 /**
24  * smc_get_gic_redist_base() - Call into SMC and get the GIC redistributor
25  *                             base address
26  *
27  * @mpidr:	Pointer where to place the base address
28  * @return 0 if OK, other -ve on error
29  */
30 int smc_get_gic_redist_base(u64 *base);
31 
32 /**
33  * smc_get_gic_its_base() - Call into SMC and get the ITS base address
34  *
35  * @mpidr:	Pointer where to place the base address
36  * @return 0 if OK, other -ve on error
37  */
38 int smc_get_gic_its_base(u64 *base);
39