sq_common.h 946 Bytes
Newer Older
1
2
3
4
5
6
/*
 * Copyright (c) 2018, ARM Limited and Contributors. All rights reserved.
 *
 * SPDX-License-Identifier: BSD-3-Clause
 */

7
8
#ifndef SQ_COMMON_H
#define SQ_COMMON_H
9

10
#include <stdint.h>
11
12

#include <lib/xlat_tables/xlat_tables_v2.h>
13

14
15
16
17
18
19
20
21
22
23
24
25
26
struct draminfo {
	uint32_t	num_regions;
	uint32_t	reserved;
	uint64_t	base1;
	uint64_t	size1;
	uint64_t	base2;
	uint64_t	size2;
	uint64_t	base3;
	uint64_t	size3;
};

uint32_t scpi_get_draminfo(struct draminfo *info);

Sumit Garg's avatar
Sumit Garg committed
27
28
void plat_sq_pwrc_setup(void);

29
30
31
32
void plat_sq_interconnect_init(void);
void plat_sq_interconnect_enter_coherency(void);
void plat_sq_interconnect_exit_coherency(void);

33
34
unsigned int sq_calc_core_pos(u_register_t mpidr);

Sumit Garg's avatar
Sumit Garg committed
35
36
37
38
39
40
void sq_gic_driver_init(void);
void sq_gic_init(void);
void sq_gic_cpuif_enable(void);
void sq_gic_cpuif_disable(void);
void sq_gic_pcpu_init(void);

41
42
43
void sq_mmap_setup(uintptr_t total_base, size_t total_size,
		   const struct mmap_region *mmap);

44
#endif /* SQ_COMMON_H */