Ignore:
File:
1 edited

Legend:

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

    r7a0359b rd99c1d2  
    100100#include <arch/barrier.h>
    101101#include <typedefs.h>
    102 #include <trace.h>
    103102#include <arch/register.h>
    104103#include <arch/cpu.h>
     
    243242 * Determine the number of entries in the DMMU's small TLB.
    244243 */
    245 NO_TRACE static inline uint16_t tlb_dsmall_size(void)
     244static inline uint16_t tlb_dsmall_size(void)
    246245{
    247246        return 16;
     
    251250 * Determine the number of entries in each DMMU's big TLB.
    252251 */
    253 NO_TRACE static inline uint16_t tlb_dbig_size(void)
     252static inline uint16_t tlb_dbig_size(void)
    254253{
    255254        return 512;
     
    259258 * Determine the number of entries in the IMMU's small TLB.
    260259 */
    261 NO_TRACE static inline uint16_t tlb_ismall_size(void)
     260static inline uint16_t tlb_ismall_size(void)
    262261{
    263262        return 16;
     
    267266 * Determine the number of entries in the IMMU's big TLB.
    268267 */
    269 NO_TRACE static inline uint16_t tlb_ibig_size(void)
     268static inline uint16_t tlb_ibig_size(void)
    270269{
    271270        if (((ver_reg_t) ver_read()).impl == IMPL_ULTRASPARCIV_PLUS)
     
    281280 * @return              Current value of Primary Context Register.
    282281 */
    283 NO_TRACE static inline uint64_t mmu_primary_context_read(void)
     282static inline uint64_t mmu_primary_context_read(void)
    284283{
    285284        return asi_u64_read(ASI_DMMU, VA_PRIMARY_CONTEXT_REG);
     
    290289 * @param v             New value of Primary Context Register.
    291290 */
    292 NO_TRACE static inline void mmu_primary_context_write(uint64_t v)
     291static inline void mmu_primary_context_write(uint64_t v)
    293292{
    294293        asi_u64_write(ASI_DMMU, VA_PRIMARY_CONTEXT_REG, v);
     
    300299 * @return              Current value of Secondary Context Register.
    301300 */
    302 NO_TRACE static inline uint64_t mmu_secondary_context_read(void)
     301static inline uint64_t mmu_secondary_context_read(void)
    303302{
    304303        return asi_u64_read(ASI_DMMU, VA_SECONDARY_CONTEXT_REG);
     
    309308 * @param v             New value of Primary Context Register.
    310309 */
    311 NO_TRACE static inline void mmu_secondary_context_write(uint64_t v)
     310static inline void mmu_secondary_context_write(uint64_t v)
    312311{
    313312        asi_u64_write(ASI_DMMU, VA_SECONDARY_CONTEXT_REG, v);
     
    324323 *                      Register.
    325324 */
    326 NO_TRACE static inline uint64_t itlb_data_access_read(size_t entry)
     325static inline uint64_t itlb_data_access_read(size_t entry)
    327326{
    328327        itlb_data_access_addr_t reg;
     
    338337 * @param value         Value to be written.
    339338 */
    340 NO_TRACE static inline void itlb_data_access_write(size_t entry, uint64_t value)
     339static inline void itlb_data_access_write(size_t entry, uint64_t value)
    341340{
    342341        itlb_data_access_addr_t reg;
     
    355354 *                      Register.
    356355 */
    357 NO_TRACE static inline uint64_t dtlb_data_access_read(size_t entry)
     356static inline uint64_t dtlb_data_access_read(size_t entry)
    358357{
    359358        dtlb_data_access_addr_t reg;
     
    369368 * @param value         Value to be written.
    370369 */
    371 NO_TRACE static inline void dtlb_data_access_write(size_t entry, uint64_t value)
     370static inline void dtlb_data_access_write(size_t entry, uint64_t value)
    372371{
    373372        dtlb_data_access_addr_t reg;
     
    385384 * @return              Current value of specified IMMU TLB Tag Read Register.
    386385 */
    387 NO_TRACE static inline uint64_t itlb_tag_read_read(size_t entry)
     386static inline uint64_t itlb_tag_read_read(size_t entry)
    388387{
    389388        itlb_tag_read_addr_t tag;
     
    400399 * @return              Current value of specified DMMU TLB Tag Read Register.
    401400 */
    402 NO_TRACE static inline uint64_t dtlb_tag_read_read(size_t entry)
     401static inline uint64_t dtlb_tag_read_read(size_t entry)
    403402{
    404403        dtlb_tag_read_addr_t tag;
     
    420419 *                      Register.
    421420 */
    422 NO_TRACE static inline uint64_t itlb_data_access_read(int tlb, size_t entry)
     421static inline uint64_t itlb_data_access_read(int tlb, size_t entry)
    423422{
    424423        itlb_data_access_addr_t reg;
     
    435434 * @param value         Value to be written.
    436435 */
    437 NO_TRACE static inline void itlb_data_access_write(int tlb, size_t entry,
     436static inline void itlb_data_access_write(int tlb, size_t entry,
    438437        uint64_t value)
    439438{
     
    455454 *                      Register.
    456455 */
    457 NO_TRACE static inline uint64_t dtlb_data_access_read(int tlb, size_t entry)
     456static inline uint64_t dtlb_data_access_read(int tlb, size_t entry)
    458457{
    459458        dtlb_data_access_addr_t reg;
     
    471470 * @param value         Value to be written.
    472471 */
    473 NO_TRACE static inline void dtlb_data_access_write(int tlb, size_t entry,
     472static inline void dtlb_data_access_write(int tlb, size_t entry,
    474473        uint64_t value)
    475474{
     
    490489 * @return              Current value of specified IMMU TLB Tag Read Register.
    491490 */
    492 NO_TRACE static inline uint64_t itlb_tag_read_read(int tlb, size_t entry)
     491static inline uint64_t itlb_tag_read_read(int tlb, size_t entry)
    493492{
    494493        itlb_tag_read_addr_t tag;
     
    507506 * @return              Current value of specified DMMU TLB Tag Read Register.
    508507 */
    509 NO_TRACE static inline uint64_t dtlb_tag_read_read(int tlb, size_t entry)
     508static inline uint64_t dtlb_tag_read_read(int tlb, size_t entry)
    510509{
    511510        dtlb_tag_read_addr_t tag;
     
    524523 * @param v             Value to be written.
    525524 */
    526 NO_TRACE static inline void itlb_tag_access_write(uint64_t v)
     525static inline void itlb_tag_access_write(uint64_t v)
    527526{
    528527        asi_u64_write(ASI_IMMU, VA_IMMU_TAG_ACCESS, v);
     
    534533 * @return              Current value of IMMU TLB Tag Access Register.
    535534 */
    536 NO_TRACE static inline uint64_t itlb_tag_access_read(void)
     535static inline uint64_t itlb_tag_access_read(void)
    537536{
    538537        return asi_u64_read(ASI_IMMU, VA_IMMU_TAG_ACCESS);
     
    543542 * @param v             Value to be written.
    544543 */
    545 NO_TRACE static inline void dtlb_tag_access_write(uint64_t v)
     544static inline void dtlb_tag_access_write(uint64_t v)
    546545{
    547546        asi_u64_write(ASI_DMMU, VA_DMMU_TAG_ACCESS, v);
     
    553552 * @return              Current value of DMMU TLB Tag Access Register.
    554553 */
    555 NO_TRACE static inline uint64_t dtlb_tag_access_read(void)
     554static inline uint64_t dtlb_tag_access_read(void)
    556555{
    557556        return asi_u64_read(ASI_DMMU, VA_DMMU_TAG_ACCESS);
     
    563562 * @param v             Value to be written.
    564563 */
    565 NO_TRACE static inline void itlb_data_in_write(uint64_t v)
     564static inline void itlb_data_in_write(uint64_t v)
    566565{
    567566        asi_u64_write(ASI_ITLB_DATA_IN_REG, 0, v);
     
    573572 * @param v             Value to be written.
    574573 */
    575 NO_TRACE static inline void dtlb_data_in_write(uint64_t v)
     574static inline void dtlb_data_in_write(uint64_t v)
    576575{
    577576        asi_u64_write(ASI_DTLB_DATA_IN_REG, 0, v);
     
    583582 * @return              Current content of I-SFSR register.
    584583 */
    585 NO_TRACE static inline uint64_t itlb_sfsr_read(void)
     584static inline uint64_t itlb_sfsr_read(void)
    586585{
    587586        return asi_u64_read(ASI_IMMU, VA_IMMU_SFSR);
     
    592591 * @param v             New value of I-SFSR register.
    593592 */
    594 NO_TRACE static inline void itlb_sfsr_write(uint64_t v)
     593static inline void itlb_sfsr_write(uint64_t v)
    595594{
    596595        asi_u64_write(ASI_IMMU, VA_IMMU_SFSR, v);
     
    602601 * @return              Current content of D-SFSR register.
    603602 */
    604 NO_TRACE static inline uint64_t dtlb_sfsr_read(void)
     603static inline uint64_t dtlb_sfsr_read(void)
    605604{
    606605        return asi_u64_read(ASI_DMMU, VA_DMMU_SFSR);
     
    611610 * @param v             New value of D-SFSR register.
    612611 */
    613 NO_TRACE static inline void dtlb_sfsr_write(uint64_t v)
     612static inline void dtlb_sfsr_write(uint64_t v)
    614613{
    615614        asi_u64_write(ASI_DMMU, VA_DMMU_SFSR, v);
     
    621620 * @return              Current content of D-SFAR register.
    622621 */
    623 NO_TRACE static inline uint64_t dtlb_sfar_read(void)
     622static inline uint64_t dtlb_sfar_read(void)
    624623{
    625624        return asi_u64_read(ASI_DMMU, VA_DMMU_SFAR);
     
    634633 * @param page          Address which is on the page to be demapped.
    635634 */
    636 NO_TRACE static inline void itlb_demap(int type, int context_encoding, uintptr_t page)
     635static inline void itlb_demap(int type, int context_encoding, uintptr_t page)
    637636{
    638637        tlb_demap_addr_t da;
     
    660659 * @param page          Address which is on the page to be demapped.
    661660 */
    662 NO_TRACE static inline void dtlb_demap(int type, int context_encoding, uintptr_t page)
     661static inline void dtlb_demap(int type, int context_encoding, uintptr_t page)
    663662{
    664663        tlb_demap_addr_t da;
Note: See TracChangeset for help on using the changeset viewer.