pmap.h (9b4fcf851a73554063d4a2de9a4f10cd23a0a4f6) | pmap.h (c47dd3db8cf22114267360dddb4b0334b997db0c) |
---|---|
1/*- 2 * Copyright (C) 2006 Semihalf, Marian Balakowicz <m8@semihalf.com> 3 * All rights reserved. 4 * 5 * Adapted for Freescale's e500 core CPUs. 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions --- 52 unchanged lines hidden (view full) --- 61 * from: $NetBSD: pmap.h,v 1.17 2000/03/30 16:18:24 jdolecek Exp $ 62 */ 63 64#ifndef _MACHINE_PMAP_H_ 65#define _MACHINE_PMAP_H_ 66 67#include <sys/queue.h> 68#include <sys/tree.h> | 1/*- 2 * Copyright (C) 2006 Semihalf, Marian Balakowicz <m8@semihalf.com> 3 * All rights reserved. 4 * 5 * Adapted for Freescale's e500 core CPUs. 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions --- 52 unchanged lines hidden (view full) --- 61 * from: $NetBSD: pmap.h,v 1.17 2000/03/30 16:18:24 jdolecek Exp $ 62 */ 63 64#ifndef _MACHINE_PMAP_H_ 65#define _MACHINE_PMAP_H_ 66 67#include <sys/queue.h> 68#include <sys/tree.h> |
69#include <sys/_cpuset.h> |
|
69#include <sys/_lock.h> 70#include <sys/_mutex.h> 71#include <machine/sr.h> 72#include <machine/pte.h> 73#include <machine/slb.h> 74#include <machine/tlb.h> 75 76struct pmap_md { --- 16 unchanged lines hidden (view full) --- 93 94 #ifdef __powerpc64__ 95 struct slbtnode *pm_slb_tree_root; 96 struct slb **pm_slb; 97 int pm_slb_len; 98 #else 99 register_t pm_sr[16]; 100 #endif | 70#include <sys/_lock.h> 71#include <sys/_mutex.h> 72#include <machine/sr.h> 73#include <machine/pte.h> 74#include <machine/slb.h> 75#include <machine/tlb.h> 76 77struct pmap_md { --- 16 unchanged lines hidden (view full) --- 94 95 #ifdef __powerpc64__ 96 struct slbtnode *pm_slb_tree_root; 97 struct slb **pm_slb; 98 int pm_slb_len; 99 #else 100 register_t pm_sr[16]; 101 #endif |
101 cpumask_t pm_active; | 102 cpuset_t pm_active; |
102 103 struct pmap *pmap_phys; 104 struct pmap_statistics pm_stats; 105}; 106 107typedef struct pmap *pmap_t; 108 109struct pvo_entry { --- 60 unchanged lines hidden (view full) --- 170struct slb **slb_alloc_user_cache(void); 171void slb_free_user_cache(struct slb **); 172 173#else 174 175struct pmap { 176 struct mtx pm_mtx; /* pmap mutex */ 177 tlbtid_t pm_tid[MAXCPU]; /* TID to identify this pmap entries in TLB */ | 103 104 struct pmap *pmap_phys; 105 struct pmap_statistics pm_stats; 106}; 107 108typedef struct pmap *pmap_t; 109 110struct pvo_entry { --- 60 unchanged lines hidden (view full) --- 171struct slb **slb_alloc_user_cache(void); 172void slb_free_user_cache(struct slb **); 173 174#else 175 176struct pmap { 177 struct mtx pm_mtx; /* pmap mutex */ 178 tlbtid_t pm_tid[MAXCPU]; /* TID to identify this pmap entries in TLB */ |
178 cpumask_t pm_active; /* active on cpus */ | 179 cpuset_t pm_active; /* active on cpus */ |
179 struct pmap_statistics pm_stats; /* pmap statistics */ 180 181 /* Page table directory, array of pointers to page tables. */ 182 pte_t *pm_pdir[PDIR_NENTRIES]; 183 184 /* List of allocated ptbl bufs (ptbl kva regions). */ 185 TAILQ_HEAD(, ptbl_buf) pm_ptbl_list; 186}; --- 66 unchanged lines hidden --- | 180 struct pmap_statistics pm_stats; /* pmap statistics */ 181 182 /* Page table directory, array of pointers to page tables. */ 183 pte_t *pm_pdir[PDIR_NENTRIES]; 184 185 /* List of allocated ptbl bufs (ptbl kva regions). */ 186 TAILQ_HEAD(, ptbl_buf) pm_ptbl_list; 187}; --- 66 unchanged lines hidden --- |