master
inc 33 lines 1.24 KB
Raw
1 /*
2 * Physical memory access endian templates
3 *
4 * Copyright (c) 2003 Fabrice Bellard
5 * Copyright (c) 2015 Linaro, Inc.
6 * Copyright (c) 2016 Red Hat, Inc.
7 * Copyright (c) 2025 Linaro Ltd.
8 *
9 * SPDX-License-Identifier: GPL-2.0-or-later
10 */
11
12 #define ADDRESS_SPACE_LD(size) \
13 glue(glue(address_space_ld, size), glue(ENDIANNESS, SUFFIX))
14 #define ADDRESS_SPACE_ST(size) \
15 glue(glue(address_space_st, size), glue(ENDIANNESS, SUFFIX))
16
17 uint16_t ADDRESS_SPACE_LD(uw)(ARG1_DECL, hwaddr addr,
18 MemTxAttrs attrs, MemTxResult *result);
19 uint32_t ADDRESS_SPACE_LD(l)(ARG1_DECL, hwaddr addr,
20 MemTxAttrs attrs, MemTxResult *result);
21 uint64_t ADDRESS_SPACE_LD(q)(ARG1_DECL, hwaddr addr,
22 MemTxAttrs attrs, MemTxResult *result);
23 void ADDRESS_SPACE_ST(w)(ARG1_DECL, hwaddr addr, uint16_t val,
24 MemTxAttrs attrs, MemTxResult *result);
25 void ADDRESS_SPACE_ST(l)(ARG1_DECL, hwaddr addr, uint32_t val,
26 MemTxAttrs attrs, MemTxResult *result);
27 void ADDRESS_SPACE_ST(q)(ARG1_DECL, hwaddr addr, uint64_t val,
28 MemTxAttrs attrs, MemTxResult *result);
29
30 #undef ADDRESS_SPACE_LD
31 #undef ADDRESS_SPACE_ST
32
33 #undef ENDIANNESS