Changeset b8230b9 in mainline for kernel/arch/ppc32/include/mm/tlb.h
- Timestamp:
- 2010-05-22T22:20:37Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- d354d57
- Parents:
- 3d6beaa
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/ppc32/include/mm/tlb.h
r3d6beaa rb8230b9 27 27 */ 28 28 29 /** @addtogroup ppc32mm 29 /** @addtogroup ppc32mm 30 30 * @{ 31 31 */ … … 45 45 46 46 typedef struct { 47 unsigned v : 1; /**< Valid */48 unsigned vsid : 24; /**< Virtual Segment ID */49 unsigned h : 1; /**< Primary/secondary hash */50 unsigned api : 6; /**< Abbreviated Page Index */51 unsigned rpn : 20; /**< Real Page Number */52 unsigned reserved0 : 3;53 unsigned r : 1; /**< Reference */54 unsigned c : 1; /**< Change */55 unsigned wimg : 4; /**< Access control */56 unsigned reserved1 : 1;57 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 */ 58 58 } phte_t; 59 59 60 60 typedef struct { 61 unsigned v : 1;62 unsigned vsid : 24;63 unsigned reserved0 : 1;64 unsigned api : 6;61 unsigned int v : 1; 62 unsigned int vsid : 24; 63 unsigned int reserved0 : 1; 64 unsigned int api : 6; 65 65 } ptehi_t; 66 66 67 67 typedef struct { 68 unsigned rpn : 20;69 unsigned xpn : 3;70 unsigned reserved0 : 1;71 unsigned c : 1;72 unsigned wimg : 4;73 unsigned x : 1;74 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; 75 75 } ptelo_t; 76 76 77 77 extern void pht_init(void); 78 extern void pht_refill(int n, istate_t *istate); 79 extern bool pht_refill_real(int n, istate_t *istate) __attribute__ ((section("K_UNMAPPED_TEXT_START"))); 80 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(int, istate_t *); 79 80 extern bool pht_refill_real(int, istate_t *) 81 __attribute__ ((section("K_UNMAPPED_TEXT_START"))); 82 extern void tlb_refill_real(int, uint32_t, ptehi_t, ptelo_t, istate_t *) 83 __attribute__ ((section("K_UNMAPPED_TEXT_START"))); 81 84 82 85 #endif
Note:
See TracChangeset
for help on using the changeset viewer.