Ignore:
Timestamp:
2006-08-01T11:24:27Z (19 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
e386cbf
Parents:
c049309
Message:

sparc64 work.

  1. Formatting fixes.
  2. When writing to DMMU ASI's, simple membar() can be used in place of flush().
  3. Substantial changes in the way the TLB is taken over.
  4. Remove unneeded functions.

This is the first revision that also runs on a real world Ultra 5 with UltraSPARC IIi
processor.

Note that 3. needs further work as the current implementation depends on the fact
that the compiler will use registers for local variables in take_over_tlb_and_tt().
Rewrite of that function into assembly is to follow.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/sparc64/include/barrier.h

    rc049309 rb3e8c90  
    5555         */
    5656         
    57         /*
    58          * %i7 should provide address that is always mapped in DTLB
    59          * as it is a pointer to kernel code.
    60          */
    61         __asm__ volatile ("flush %i7\n");
     57        __asm__ volatile ("flush %0\n" :: "r" (0x400000));
    6258}
    6359
Note: See TracChangeset for help on using the changeset viewer.