Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ce217952 authored by Michael Ellerman's avatar Michael Ellerman Committed by Paul Mackerras
Browse files

[PATCH] ppc64: Consolidate some macros



The only caller of chunk_offset() and abs_chunk() is phys_to_abs(), so
fold the former two into the latter.

Signed-off-by: default avatarMichael Ellerman <michael@ellerman.id.au>
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent 56e97b71
Loading
Loading
Loading
Loading
+7 −14
Original line number Diff line number Diff line
@@ -44,24 +44,17 @@ static inline unsigned long addr_to_chunk(unsigned long addr)
	return addr >> MSCHUNKS_CHUNK_SHIFT;
}

static inline unsigned long chunk_offset(unsigned long addr)
static inline unsigned long phys_to_abs(unsigned long pa)
{
	return addr & MSCHUNKS_OFFSET_MASK;
}
	unsigned long chunk;

static inline unsigned long abs_chunk(unsigned long pchunk)
{
	if (pchunk >= mschunks_map.num_chunks)
		return pchunk;
	chunk = addr_to_chunk(pa);

	return mschunks_map.mapping[pchunk];
}
	if (chunk < mschunks_map.num_chunks)
		chunk = mschunks_map.mapping[chunk];

/* A macro so it can take pointers or unsigned long. */
#define phys_to_abs(pa)						     \
	({ unsigned long _pa = (unsigned long)(pa);			     \
	   chunk_to_addr(abs_chunk(addr_to_chunk(_pa))) + chunk_offset(_pa); \
	})
	return chunk_to_addr(chunk) + (pa & MSCHUNKS_OFFSET_MASK);
}

static inline unsigned long
physRpn_to_absRpn(unsigned long rpn)