Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/ppc32/include/mm/tlb.h

    r0867321 r5954241  
    2727 */
    2828
    29 /** @addtogroup ppc32mm 
     29/** @addtogroup ppc32mm
    3030 * @{
    3131 */
     
    3737
    3838#include <arch/interrupt.h>
    39 #include <arch/types.h>
    4039#include <typedefs.h>
    4140
     
    4645
    4746typedef 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 */
    5958} phte_t;
    6059
    6160typedef 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;
    6665} ptehi_t;
    6766
    6867typedef 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;
    7675} ptelo_t;
    7776
    7877extern 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")));
     78extern void pht_refill(unsigned int, istate_t *);
     79
     80extern bool pht_refill_real(unsigned int, istate_t *)
     81    __attribute__ ((section("K_UNMAPPED_TEXT_START")));
     82extern void tlb_refill_real(unsigned int, uint32_t, ptehi_t, ptelo_t,
     83    istate_t *) __attribute__ ((section("K_UNMAPPED_TEXT_START")));
    8284
    8385#endif
Note: See TracChangeset for help on using the changeset viewer.