blob: 5be2ffc2c7d0b78e0966f920ca104b423843a6cb [file] [log] [blame]
Igor Podgainõid1a7f4d2024-11-26 12:50:47 +01001/*
2 * Copyright (c) 2024, Arm Limited. All rights reserved.
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7#ifndef SYSREG128_H
8#define SYSREG128_H
9
10#include <stdint.h>
11
12#ifdef __aarch64__
13
14/* Assembly function prototypes. */
15uint128_t read128_par_el1(void);
16uint128_t read128_ttbr0_el1(void);
17uint128_t read128_ttbr1_el1(void);
18uint128_t read128_ttbr0_el2(void);
19uint128_t read128_ttbr1_el2(void);
20uint128_t read128_vttbr_el2(void);
21uint128_t read128_rcwmask_el1(void);
22uint128_t read128_rcwsmask_el1(void);
23
24void write128_par_el1(uint128_t v);
25void write128_ttbr0_el1(uint128_t v);
26void write128_ttbr1_el1(uint128_t v);
27void write128_ttbr0_el2(uint128_t v);
28void write128_ttbr1_el2(uint128_t v);
29void write128_vttbr_el2(uint128_t v);
30void write128_rcwmask_el1(uint128_t v);
31void write128_rcwsmask_el1(uint128_t v);
32
33#endif /* __aarch64__ */
34
35#endif /* SYSREG128_H */