Rev 3022 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3022 | Rev 4537 | ||
---|---|---|---|
Line 59... | Line 59... | ||
59 | /** TLB shootdown message. */ |
59 | /** TLB shootdown message. */ |
60 | typedef struct { |
60 | typedef struct { |
61 | tlb_invalidate_type_t type; /**< Message type. */ |
61 | tlb_invalidate_type_t type; /**< Message type. */ |
62 | asid_t asid; /**< Address space identifier. */ |
62 | asid_t asid; /**< Address space identifier. */ |
63 | uintptr_t page; /**< Page address. */ |
63 | uintptr_t page; /**< Page address. */ |
64 | count_t count; /**< Number of pages to invalidate. */ |
64 | size_t count; /**< Number of pages to invalidate. */ |
65 | } tlb_shootdown_msg_t; |
65 | } tlb_shootdown_msg_t; |
66 | 66 | ||
67 | extern void tlb_init(void); |
67 | extern void tlb_init(void); |
68 | 68 | ||
69 | #ifdef CONFIG_SMP |
69 | #ifdef CONFIG_SMP |
70 | extern void tlb_shootdown_start(tlb_invalidate_type_t type, asid_t asid, |
70 | extern void tlb_shootdown_start(tlb_invalidate_type_t type, asid_t asid, |
71 | uintptr_t page, count_t count); |
71 | uintptr_t page, size_t count); |
72 | extern void tlb_shootdown_finalize(void); |
72 | extern void tlb_shootdown_finalize(void); |
73 | extern void tlb_shootdown_ipi_recv(void); |
73 | extern void tlb_shootdown_ipi_recv(void); |
74 | #else |
74 | #else |
75 | #define tlb_shootdown_start(w, x, y, z) |
75 | #define tlb_shootdown_start(w, x, y, z) |
76 | #define tlb_shootdown_finalize() |
76 | #define tlb_shootdown_finalize() |
Line 82... | Line 82... | ||
82 | extern void tlb_print(void); |
82 | extern void tlb_print(void); |
83 | extern void tlb_shootdown_ipi_send(void); |
83 | extern void tlb_shootdown_ipi_send(void); |
84 | 84 | ||
85 | extern void tlb_invalidate_all(void); |
85 | extern void tlb_invalidate_all(void); |
86 | extern void tlb_invalidate_asid(asid_t asid); |
86 | extern void tlb_invalidate_asid(asid_t asid); |
87 | extern void tlb_invalidate_pages(asid_t asid, uintptr_t page, count_t cnt); |
87 | extern void tlb_invalidate_pages(asid_t asid, uintptr_t page, size_t cnt); |
88 | #endif |
88 | #endif |
89 | 89 | ||
90 | /** @} |
90 | /** @} |
91 | */ |
91 | */ |