blob: 01c4055f5f2502bc3002561672c44f3764a2d211 [file] [log] [blame]
Antonio Nino Diazae6779e2017-11-06 14:49:04 +00001/*
2 * Copyright (c) 2015-2017, ARM Limited and Contributors. All rights reserved.
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7#ifndef __RPI3_PRIVATE_H__
8#define __RPI3_PRIVATE_H__
9
10#include <sys/types.h>
11
12/*******************************************************************************
13 * Function and variable prototypes
14 ******************************************************************************/
15
16/* Utility functions */
17void rpi3_setup_page_tables(uintptr_t total_base, size_t total_size,
18 uintptr_t code_start, uintptr_t code_limit,
19 uintptr_t rodata_start, uintptr_t rodata_limit
20#if USE_COHERENT_MEM
21 , uintptr_t coh_start, uintptr_t coh_limit
22#endif
23 );
24
25/* Optional functions required in the Raspberry Pi 3 port */
26unsigned int plat_rpi3_calc_core_pos(u_register_t mpidr);
27
28/* BL2 utility functions */
29uint32_t rpi3_get_spsr_for_bl32_entry(void);
30uint32_t rpi3_get_spsr_for_bl33_entry(void);
31
32/* IO storage utility functions */
33void plat_rpi3_io_setup(void);
34
35#endif /*__RPI3_PRIVATE_H__ */