OpenOCD
mips_m4k.h
Go to the documentation of this file.
1
/* SPDX-License-Identifier: GPL-2.0-or-later */
2
3
/***************************************************************************
4
* Copyright (C) 2008 by Spencer Oliver *
5
* spen@spen-soft.co.uk *
6
* *
7
* Copyright (C) 2008 by David T.L. Wong *
8
* *
9
* Copyright (C) 2011 by Drasko DRASKOVIC *
10
* drasko.draskovic@gmail.com *
11
***************************************************************************/
12
13
#ifndef OPENOCD_TARGET_MIPS_M4K_H
14
#define OPENOCD_TARGET_MIPS_M4K_H
15
16
struct
target
;
17
18
#define MIPSM4K_COMMON_MAGIC 0xB321B321U
19
20
struct
mips_m4k_common
{
21
unsigned
int
common_magic
;
22
23
struct
mips32_common
mips32
;
24
25
bool
is_pic32mx
;
26
};
27
28
static
inline
struct
mips_m4k_common
*
29
target_to_m4k
(
struct
target
*
target
)
30
{
31
return
container_of
(
target
->
arch_info
,
32
struct
mips_m4k_common
,
mips32
);
33
}
34
35
static
inline
void
mips_m4k_isa_filter
(
enum
mips32_isa_imp
isa_imp,
target_addr_t
*
addr
)
36
{
37
if
(isa_imp <= 1) {
/* if only one isa implemented */
38
target_addr_t
address = (*
addr
& ~1) | isa_imp;
39
40
if
(address != *
addr
) {
41
LOG_USER
(
"Warning: isa bit changed due to isa not implemented"
);
42
*
addr
= address;
43
}
44
}
45
}
46
47
#endif
/* OPENOCD_TARGET_MIPS_M4K_H */
LOG_USER
#define LOG_USER(expr ...)
Definition:
log.h:126
mips32_isa_imp
mips32_isa_imp
Definition:
mips32.h:71
target_to_m4k
static struct mips_m4k_common * target_to_m4k(struct target *target)
Definition:
mips_m4k.h:29
mips_m4k_isa_filter
static void mips_m4k_isa_filter(enum mips32_isa_imp isa_imp, target_addr_t *addr)
Definition:
mips_m4k.h:35
addr
uint32_t addr
Definition:
nuttx.c:65
mips32_common
Definition:
mips32.h:84
mips_m4k_common
Definition:
mips_m4k.h:20
mips_m4k_common::is_pic32mx
bool is_pic32mx
Definition:
mips_m4k.h:25
mips_m4k_common::mips32
struct mips32_common mips32
Definition:
mips_m4k.h:23
mips_m4k_common::common_magic
unsigned int common_magic
Definition:
mips_m4k.h:21
target
Definition:
target.h:120
target::arch_info
void * arch_info
Definition:
target.h:169
target_addr_t
uint64_t target_addr_t
Definition:
types.h:335
container_of
#define container_of(ptr, type, member)
Cast a member of a structure out to the containing structure.
Definition:
types.h:68
src
target
mips_m4k.h
Generated by
1.9.1