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

Commit 8e561e7e authored by David Gibson's avatar David Gibson Committed by Paul Mackerras
Browse files

[POWERPC] Kill typedef-ed structs for hash PTEs and BATs



Using typedefs to rename structure types if frowned on by CodingStyle.
However, we do so for the hash PTE structure on both ppc32 (where it's
called "PTE") and ppc64 (where it's called "hpte_t").  On ppc32 we
also have such a typedef for the BATs ("BAT").

This removes this unhelpful use of typedefs, in the process
bringing ppc32 and ppc64 closer together, by using the name "struct
hash_pte" in both cases.

Signed-off-by: default avatarDavid Gibson <david@gibson.dropbear.id.au>
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent 9c709f3b
Loading
Loading
Loading
Loading
+11 −11
Original line number Diff line number Diff line
@@ -104,7 +104,7 @@ static inline void tlbie(unsigned long va, int psize, int local)
		spin_unlock(&native_tlbie_lock);
}

static inline void native_lock_hpte(hpte_t *hptep)
static inline void native_lock_hpte(struct hash_pte *hptep)
{
	unsigned long *word = &hptep->v;

@@ -116,7 +116,7 @@ static inline void native_lock_hpte(hpte_t *hptep)
	}
}

static inline void native_unlock_hpte(hpte_t *hptep)
static inline void native_unlock_hpte(struct hash_pte *hptep)
{
	unsigned long *word = &hptep->v;

@@ -128,7 +128,7 @@ static long native_hpte_insert(unsigned long hpte_group, unsigned long va,
			unsigned long pa, unsigned long rflags,
			unsigned long vflags, int psize)
{
	hpte_t *hptep = htab_address + hpte_group;
	struct hash_pte *hptep = htab_address + hpte_group;
	unsigned long hpte_v, hpte_r;
	int i;

@@ -177,7 +177,7 @@ static long native_hpte_insert(unsigned long hpte_group, unsigned long va,

static long native_hpte_remove(unsigned long hpte_group)
{
	hpte_t *hptep;
	struct hash_pte *hptep;
	int i;
	int slot_offset;
	unsigned long hpte_v;
@@ -217,7 +217,7 @@ static long native_hpte_remove(unsigned long hpte_group)
static long native_hpte_updatepp(unsigned long slot, unsigned long newpp,
				 unsigned long va, int psize, int local)
{
	hpte_t *hptep = htab_address + slot;
	struct hash_pte *hptep = htab_address + slot;
	unsigned long hpte_v, want_v;
	int ret = 0;

@@ -250,7 +250,7 @@ static long native_hpte_updatepp(unsigned long slot, unsigned long newpp,

static long native_hpte_find(unsigned long va, int psize)
{
	hpte_t *hptep;
	struct hash_pte *hptep;
	unsigned long hash;
	unsigned long i, j;
	long slot;
@@ -293,7 +293,7 @@ static void native_hpte_updateboltedpp(unsigned long newpp, unsigned long ea,
{
	unsigned long vsid, va;
	long slot;
	hpte_t *hptep;
	struct hash_pte *hptep;

	vsid = get_kernel_vsid(ea);
	va = (vsid << 28) | (ea & 0x0fffffff);
@@ -314,7 +314,7 @@ static void native_hpte_updateboltedpp(unsigned long newpp, unsigned long ea,
static void native_hpte_invalidate(unsigned long slot, unsigned long va,
				   int psize, int local)
{
	hpte_t *hptep = htab_address + slot;
	struct hash_pte *hptep = htab_address + slot;
	unsigned long hpte_v;
	unsigned long want_v;
	unsigned long flags;
@@ -344,7 +344,7 @@ static void native_hpte_invalidate(unsigned long slot, unsigned long va,
#define LP_BITS		8
#define LP_MASK(i)	((0xFF >> (i)) << LP_SHIFT)

static void hpte_decode(hpte_t *hpte, unsigned long slot,
static void hpte_decode(struct hash_pte *hpte, unsigned long slot,
			int *psize, unsigned long *va)
{
	unsigned long hpte_r = hpte->r;
@@ -414,7 +414,7 @@ static void hpte_decode(hpte_t *hpte, unsigned long slot,
static void native_hpte_clear(void)
{
	unsigned long slot, slots, flags;
	hpte_t *hptep = htab_address;
	struct hash_pte *hptep = htab_address;
	unsigned long hpte_v, va;
	unsigned long pteg_count;
	int psize;
@@ -461,7 +461,7 @@ static void native_hpte_clear(void)
static void native_flush_hash_range(unsigned long number, int local)
{
	unsigned long va, hash, index, hidx, shift, slot;
	hpte_t *hptep;
	struct hash_pte *hptep;
	unsigned long hpte_v;
	unsigned long want_v;
	unsigned long flags;
+1 −1
Original line number Diff line number Diff line
@@ -87,7 +87,7 @@ extern unsigned long dart_tablebase;
static unsigned long _SDR1;
struct mmu_psize_def mmu_psize_defs[MMU_PAGE_COUNT];

hpte_t *htab_address;
struct hash_pte *htab_address;
unsigned long htab_size_bytes;
unsigned long htab_hash_mask;
int mmu_linear_psize = MMU_PAGE_4K;
+2 −2
Original line number Diff line number Diff line
@@ -39,8 +39,8 @@ extern int __map_without_bats;
extern unsigned long ioremap_base;
extern unsigned int rtas_data, rtas_size;

struct _PTE;
extern struct _PTE *Hash, *Hash_end;
struct hash_pte;
extern struct hash_pte *Hash, *Hash_end;
extern unsigned long Hash_size, Hash_mask;

extern unsigned int num_tlbcam_entries;
+3 −3
Original line number Diff line number Diff line
@@ -34,12 +34,12 @@

#include "mmu_decl.h"

PTE *Hash, *Hash_end;
struct hash_pte *Hash, *Hash_end;
unsigned long Hash_size, Hash_mask;
unsigned long _SDR1;

union ubat {			/* BAT register values to be loaded */
	BAT	bat;
	struct ppc_bat bat;
	u32	word[2];
} BATS[8][2];			/* 8 pairs of IBAT, DBAT */

@@ -244,7 +244,7 @@ void __init MMU_init_hw(void)
	cacheable_memzero(Hash, Hash_size);
	_SDR1 = __pa(Hash) | SDR1_LOW_BITS;

	Hash_end = (PTE *) ((unsigned long)Hash + Hash_size);
	Hash_end = (struct hash_pte *) ((unsigned long)Hash + Hash_size);

	printk("Total memory = %ldMB; using %ldkB for hash table (at %p)\n",
	       total_memory >> 20, Hash_size >> 10, Hash);
+5 −4
Original line number Diff line number Diff line
@@ -76,24 +76,25 @@ static inline u64 HvCallHpt_invalidateSetSwBitsGet(u32 hpteIndex, u8 bitson,
	return compressedStatus;
}

static inline u64 HvCallHpt_findValid(hpte_t *hpte, u64 vpn)
static inline u64 HvCallHpt_findValid(struct hash_pte *hpte, u64 vpn)
{
	return HvCall3Ret16(HvCallHptFindValid, hpte, vpn, 0, 0);
}

static inline u64 HvCallHpt_findNextValid(hpte_t *hpte, u32 hpteIndex,
static inline u64 HvCallHpt_findNextValid(struct hash_pte *hpte, u32 hpteIndex,
		u8 bitson, u8 bitsoff)
{
	return HvCall3Ret16(HvCallHptFindNextValid, hpte, hpteIndex,
			bitson, bitsoff);
}

static inline void HvCallHpt_get(hpte_t *hpte, u32 hpteIndex)
static inline void HvCallHpt_get(struct hash_pte *hpte, u32 hpteIndex)
{
	HvCall2Ret16(HvCallHptGet, hpte, hpteIndex, 0);
}

static inline void HvCallHpt_addValidate(u32 hpteIndex, u32 hBit, hpte_t *hpte)
static inline void HvCallHpt_addValidate(u32 hpteIndex, u32 hBit,
					 struct hash_pte *hpte)
{
	HvCall4(HvCallHptAddValidate, hpteIndex, hBit, hpte->v, hpte->r);
}
Loading