OpenOCD
nds32_tlb.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 
3 /***************************************************************************
4  * Copyright (C) 2013 Andes Technology *
5  * Hsiangkai Wang <hkwang@andestech.com> *
6  ***************************************************************************/
7 
8 #ifndef OPENOCD_TARGET_NDS32_TLB_H
9 #define OPENOCD_TARGET_NDS32_TLB_H
10 
11 #include "nds32.h"
12 
13 enum {
17 };
18 
20 
21  uint32_t l1_offset_mask;
22  uint32_t l1_offset_shift;
23  uint32_t l2_offset_mask;
24  uint32_t l2_offset_shift;
25  uint32_t va_offset_mask;
26  uint32_t l1_base_mask;
27  uint32_t l2_base_mask;
28  uint32_t ppn_mask;
29 };
30 
31 extern int nds32_probe_tlb(struct nds32 *nds32, const target_addr_t virtual_address,
32  target_addr_t *physical_address);
33 extern int nds32_walk_page_table(struct nds32 *nds32, const target_addr_t virtual_address,
34  target_addr_t *physical_address);
35 
36 #endif /* OPENOCD_TARGET_NDS32_TLB_H */
Holds the interface to Andes cores.
@ PAGE_SIZE_NUM
Definition: nds32_tlb.h:16
@ PAGE_SIZE_8K
Definition: nds32_tlb.h:15
@ PAGE_SIZE_4K
Definition: nds32_tlb.h:14
int nds32_walk_page_table(struct nds32 *nds32, const target_addr_t virtual_address, target_addr_t *physical_address)
Definition: nds32_tlb.c:30
int nds32_probe_tlb(struct nds32 *nds32, const target_addr_t virtual_address, target_addr_t *physical_address)
Definition: nds32_tlb.c:14
Represents a generic Andes core.
Definition: nds32.h:226
uint64_t target_addr_t
Definition: types.h:335