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
{
14
PAGE_SIZE_4K
= 0,
15
PAGE_SIZE_8K
,
16
PAGE_SIZE_NUM
,
17
};
18
19
struct
page_table_walker_info_s
{
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 */
nds32.h
Holds the interface to Andes cores.
PAGE_SIZE_NUM
@ PAGE_SIZE_NUM
Definition:
nds32_tlb.h:16
PAGE_SIZE_8K
@ PAGE_SIZE_8K
Definition:
nds32_tlb.h:15
PAGE_SIZE_4K
@ PAGE_SIZE_4K
Definition:
nds32_tlb.h:14
nds32_walk_page_table
int nds32_walk_page_table(struct nds32 *nds32, const target_addr_t virtual_address, target_addr_t *physical_address)
Definition:
nds32_tlb.c:30
nds32_probe_tlb
int nds32_probe_tlb(struct nds32 *nds32, const target_addr_t virtual_address, target_addr_t *physical_address)
Definition:
nds32_tlb.c:14
nds32
Represents a generic Andes core.
Definition:
nds32.h:226
page_table_walker_info_s
Definition:
nds32_tlb.h:19
page_table_walker_info_s::l1_base_mask
uint32_t l1_base_mask
Definition:
nds32_tlb.h:26
page_table_walker_info_s::l2_offset_mask
uint32_t l2_offset_mask
Definition:
nds32_tlb.h:23
page_table_walker_info_s::ppn_mask
uint32_t ppn_mask
Definition:
nds32_tlb.h:28
page_table_walker_info_s::l1_offset_mask
uint32_t l1_offset_mask
Definition:
nds32_tlb.h:21
page_table_walker_info_s::l1_offset_shift
uint32_t l1_offset_shift
Definition:
nds32_tlb.h:22
page_table_walker_info_s::l2_offset_shift
uint32_t l2_offset_shift
Definition:
nds32_tlb.h:24
page_table_walker_info_s::l2_base_mask
uint32_t l2_base_mask
Definition:
nds32_tlb.h:27
page_table_walker_info_s::va_offset_mask
uint32_t va_offset_mask
Definition:
nds32_tlb.h:25
target_addr_t
uint64_t target_addr_t
Definition:
types.h:335
src
target
nds32_tlb.h
Generated by
1.9.1