Changeset b3e8c90 in mainline for kernel/arch/sparc64/src/start.S


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/src/start.S

    rc049309 rb3e8c90  
    7272        nop
    7373
     74        set kernel_image_start, %o0
    7475        /*
    75          * Take over control of identity mapping.
    76          * Take over control of trap table.
     76         * Take over control of MMU.
    7777         *
    78          * After this call, the kernel is entirely self-sufficient
    79          * and independent on OpenFirmware.
     78         * First, take over DMMU for which we don't need to issue
     79         * any FLUSH instructions. Because of that, we can
     80         * demap the old DTLB pretty straightforwardly.
    8081         */
    81         set kernel_image_start, %o0
    8282        call take_over_tlb_and_tt
    8383        nop
Note: See TracChangeset for help on using the changeset viewer.