Use the %hwaddr type for physical addresses.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
---
target/s390x/s390x-internal.h | 9 +++++----
target/s390x/helper.c | 2 +-
target/s390x/mmu_helper.c | 16 ++++++++--------
target/s390x/tcg/excp_helper.c | 2 +-
4 files changed, 15 insertions(+), 14 deletions(-)
diff --git a/target/s390x/s390x-internal.h b/target/s390x/s390x-internal.h
index f0f7bb5cb11..790cd688762 100644
--- a/target/s390x/s390x-internal.h
+++ b/target/s390x/s390x-internal.h
@@ -10,6 +10,7 @@
#ifndef S390X_INTERNAL_H
#define S390X_INTERNAL_H
+#include "exec/hwaddr.h"
#include "exec/vaddr.h"
#include "cpu.h"
#include "fpu/softfloat.h"
@@ -368,19 +369,19 @@ void ioinst_handle_sal(S390CPU *cpu, uint64_t reg1,
uintptr_t ra);
/* mem_helper.c */
-target_ulong mmu_real2abs(CPUS390XState *env, target_ulong raddr);
void probe_write_access(CPUS390XState *env, uint64_t addr, uint64_t len,
uintptr_t ra);
/* mmu_helper.c */
-bool mmu_absolute_addr_valid(target_ulong addr, bool is_write);
+hwaddr mmu_real2abs(CPUS390XState *env, hwaddr raddr);
+bool mmu_absolute_addr_valid(hwaddr addr, bool is_write);
/* Special access mode only valid for mmu_translate() */
#define MMU_S390_LRA -1
int mmu_translate(CPUS390XState *env, vaddr vaddr, int rw, uint64_t asc,
- target_ulong *raddr, int *flags, uint64_t *tec);
+ hwaddr *raddr, int *flags, uint64_t *tec);
int mmu_translate_real(CPUS390XState *env, vaddr raddr, int rw,
- target_ulong *addr, int *flags, uint64_t *tec);
+ hwaddr *addr, int *flags, uint64_t *tec);
/* misc_helper.c */
diff --git a/target/s390x/helper.c b/target/s390x/helper.c
index 5002eebd4c8..667d4a0da75 100644
--- a/target/s390x/helper.c
+++ b/target/s390x/helper.c
@@ -43,7 +43,7 @@ hwaddr s390_cpu_get_phys_page_debug(CPUState *cs, vaddr vaddr)
{
S390CPU *cpu = S390_CPU(cs);
CPUS390XState *env = &cpu->env;
- target_ulong raddr;
+ hwaddr raddr;
int prot;
uint64_t asc = env->psw.mask & PSW_MASK_ASC;
uint64_t tec;
diff --git a/target/s390x/mmu_helper.c b/target/s390x/mmu_helper.c
index 3313487b41d..a3cbfab79b6 100644
--- a/target/s390x/mmu_helper.c
+++ b/target/s390x/mmu_helper.c
@@ -86,7 +86,7 @@ static bool lowprot_enabled(const CPUS390XState *env,
uint64_t asc)
* Translate real address to absolute (= physical)
* address by taking care of the prefix mapping.
*/
-target_ulong mmu_real2abs(CPUS390XState *env, target_ulong raddr)
+hwaddr mmu_real2abs(CPUS390XState *env, hwaddr raddr)
{
if (raddr < 0x2000) {
return raddr + env->psa; /* Map the lowcore. */
@@ -96,7 +96,7 @@ target_ulong mmu_real2abs(CPUS390XState *env, target_ulong
raddr)
return raddr;
}
-bool mmu_absolute_addr_valid(target_ulong addr, bool is_write)
+bool mmu_absolute_addr_valid(hwaddr addr, bool is_write)
{
return address_space_access_valid(&address_space_memory,
addr & TARGET_PAGE_MASK,
@@ -123,7 +123,7 @@ static inline bool read_table_entry(CPUS390XState *env,
hwaddr gaddr,
}
static int mmu_translate_asce(CPUS390XState *env, vaddr vaddr,
- uint64_t asc, uint64_t asce, target_ulong *raddr,
+ uint64_t asc, uint64_t asce, hwaddr *raddr,
int *flags)
{
const bool edat1 = (env->cregs[0] & CR0_EDAT) &&
@@ -296,7 +296,7 @@ static int mmu_translate_asce(CPUS390XState *env, vaddr
vaddr,
return 0;
}
-static void mmu_handle_skey(target_ulong addr, int rw, int *flags)
+static void mmu_handle_skey(hwaddr addr, int rw, int *flags)
{
static S390SKeysClass *skeyclass;
static S390SKeysState *ss;
@@ -382,7 +382,7 @@ static void mmu_handle_skey(target_ulong addr, int rw, int
*flags)
* @return 0 = success, != 0, the exception to raise
*/
int mmu_translate(CPUS390XState *env, vaddr vaddr, int rw, uint64_t asc,
- target_ulong *raddr, int *flags, uint64_t *tec)
+ hwaddr *raddr, int *flags, uint64_t *tec)
{
uint64_t asce;
int r;
@@ -472,7 +472,7 @@ nodat:
* the MEMOP interface.
*/
static int translate_pages(S390CPU *cpu, vaddr addr, int nr_pages,
- target_ulong *pages, bool is_write, uint64_t *tec)
+ hwaddr *pages, bool is_write, uint64_t *tec)
{
uint64_t asc = cpu->env.psw.mask & PSW_MASK_ASC;
CPUS390XState *env = &cpu->env;
@@ -523,7 +523,7 @@ int s390_cpu_virt_mem_rw(S390CPU *cpu, vaddr laddr, uint8_t
ar, void *hostbuf,
{
const MemTxAttrs attrs = MEMTXATTRS_UNSPECIFIED;
int currlen, nr_pages, i;
- target_ulong *pages;
+ hwaddr *pages;
uint64_t tec;
int ret;
@@ -585,7 +585,7 @@ void s390_cpu_virt_mem_handle_exc(S390CPU *cpu, uintptr_t
ra)
* @return 0 = success, != 0, the exception to raise
*/
int mmu_translate_real(CPUS390XState *env, vaddr raddr, int rw,
- target_ulong *addr, int *flags, uint64_t *tec)
+ hwaddr *addr, int *flags, uint64_t *tec)
{
const bool lowprot_enabled = env->cregs[0] & CR0_LOWPROT;
diff --git a/target/s390x/tcg/excp_helper.c b/target/s390x/tcg/excp_helper.c
index 292d130d03e..41b0017d767 100644
--- a/target/s390x/tcg/excp_helper.c
+++ b/target/s390x/tcg/excp_helper.c
@@ -148,7 +148,7 @@ bool s390_cpu_tlb_fill(CPUState *cs, vaddr address, int
size,
{
CPUS390XState *env = cpu_env(cs);
vaddr vaddr;
- target_ulong raddr;
+ hwaddr raddr;
uint64_t asc, tec;
int prot, excp;
--
2.52.0