Changes in kernel/arch/ppc32/include/mm/tlb.h [0867321:5954241] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/ppc32/include/mm/tlb.h
r0867321 r5954241 27 27 */ 28 28 29 /** @addtogroup ppc32mm 29 /** @addtogroup ppc32mm 30 30 * @{ 31 31 */ … … 37 37 38 38 #include <arch/interrupt.h> 39 #include <arch/types.h>40 39 #include <typedefs.h> 41 40 … … 46 45 47 46 typedef struct { 48 unsigned v : 1; /**< Valid */49 unsigned vsid : 24; /**< Virtual Segment ID */50 unsigned h : 1; /**< Primary/secondary hash */51 unsigned api : 6; /**< Abbreviated Page Index */52 unsigned rpn : 20; /**< Real Page Number */53 unsigned reserved0 : 3;54 unsigned r : 1; /**< Reference */55 unsigned c : 1; /**< Change */56 unsigned wimg : 4; /**< Access control */57 unsigned reserved1 : 1;58 unsigned pp : 2; /**< Page protection */47 unsigned int v : 1; /**< Valid */ 48 unsigned int vsid : 24; /**< Virtual Segment ID */ 49 unsigned int h : 1; /**< Primary/secondary hash */ 50 unsigned int api : 6; /**< Abbreviated Page Index */ 51 unsigned int rpn : 20; /**< Real Page Number */ 52 unsigned int reserved0 : 3; 53 unsigned int r : 1; /**< Reference */ 54 unsigned int c : 1; /**< Change */ 55 unsigned int wimg : 4; /**< Access control */ 56 unsigned int reserved1 : 1; 57 unsigned int pp : 2; /**< Page protection */ 59 58 } phte_t; 60 59 61 60 typedef struct { 62 unsigned v : 1;63 unsigned vsid : 24;64 unsigned reserved0 : 1;65 unsigned api : 6;61 unsigned int v : 1; 62 unsigned int vsid : 24; 63 unsigned int reserved0 : 1; 64 unsigned int api : 6; 66 65 } ptehi_t; 67 66 68 67 typedef struct { 69 unsigned rpn : 20;70 unsigned xpn : 3;71 unsigned reserved0 : 1;72 unsigned c : 1;73 unsigned wimg : 4;74 unsigned x : 1;75 unsigned pp : 2;68 unsigned int rpn : 20; 69 unsigned int xpn : 3; 70 unsigned int reserved0 : 1; 71 unsigned int c : 1; 72 unsigned int wimg : 4; 73 unsigned int x : 1; 74 unsigned int pp : 2; 76 75 } ptelo_t; 77 76 78 77 extern void pht_init(void); 79 extern void pht_refill(int n, istate_t *istate); 80 extern bool pht_refill_real(int n, istate_t *istate) __attribute__ ((section("K_UNMAPPED_TEXT_START"))); 81 extern void tlb_refill_real(int n, uint32_t tlbmiss, ptehi_t ptehi, ptelo_t ptelo, istate_t *istate) __attribute__ ((section("K_UNMAPPED_TEXT_START"))); 78 extern void pht_refill(unsigned int, istate_t *); 79 80 extern bool pht_refill_real(unsigned int, istate_t *) 81 __attribute__ ((section("K_UNMAPPED_TEXT_START"))); 82 extern void tlb_refill_real(unsigned int, uint32_t, ptehi_t, ptelo_t, 83 istate_t *) __attribute__ ((section("K_UNMAPPED_TEXT_START"))); 82 84 83 85 #endif
Note:
See TracChangeset
for help on using the changeset viewer.