1 | /* Define target_phys_addr_t if it exists. */
|
---|
2 |
|
---|
3 | #ifndef TARGPHYS_H
|
---|
4 | #define TARGPHYS_H
|
---|
5 |
|
---|
6 | #ifdef TARGET_PHYS_ADDR_BITS
|
---|
7 | /* target_phys_addr_t is the type of a physical address (its size can
|
---|
8 | be different from 'target_ulong'). We have sizeof(target_phys_addr)
|
---|
9 | = max(sizeof(unsigned long),
|
---|
10 | sizeof(size_of_target_physical_address)) because we must pass a
|
---|
11 | host pointer to memory operations in some cases */
|
---|
12 |
|
---|
13 | #if TARGET_PHYS_ADDR_BITS == 32
|
---|
14 | typedef uint32_t target_phys_addr_t;
|
---|
15 | #define TARGET_PHYS_ADDR_MAX UINT32_MAX
|
---|
16 | #define TARGET_FMT_plx "%08x"
|
---|
17 | #elif TARGET_PHYS_ADDR_BITS == 64
|
---|
18 | typedef uint64_t target_phys_addr_t;
|
---|
19 | #define TARGET_PHYS_ADDR_MAX UINT64_MAX
|
---|
20 | #define TARGET_FMT_plx "%016" PRIx64
|
---|
21 | #endif
|
---|
22 | #endif
|
---|
23 |
|
---|
24 | #endif
|
---|