Changeset ed166f7 in mainline for kernel/arch/sparc64/src/mm/as.c


Ignore:
Timestamp:
2006-08-31T18:53:14Z (18 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
6767c1d
Parents:
e0b241f
Message:

A lot of untested sparc64 stuff:

  • Write ASID to hardware when a thread is about to run in userspace.
  • Add userspace() and switch_to_userspace() functions.
  • Handle special cases when the userspace spill/fill handler causes MMU trap.
  • Resolve some TODOs in the existing sparc64 code.
  • sparc64 has now C99 compliant header guards.
  • Formatting and indentation fixes.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/sparc64/src/mm/as.c

    re0b241f red166f7  
    2727 */
    2828
    29  /** @addtogroup sparc64mm
     29/** @addtogroup sparc64mm
    3030 * @{
    3131 */
     
    3434
    3535#include <arch/mm/as.h>
     36#include <arch/mm/tlb.h>
    3637#include <genarch/mm/as_ht.h>
    3738#include <genarch/mm/asid_fifo.h>
     
    4445}
    4546
    46  /** @}
     47void as_install_arch(as_t *as)
     48{
     49        tlb_context_reg_t ctx;
     50       
     51        /*
     52         * Write ASID to secondary context register.
     53         * The primary context register has to be set
     54         * from TL>0 so it will be filled from the
     55         * secondary context register from the TL=1
     56         * code just before switch to userspace.
     57         */
     58        ctx.v = 0;
     59        ctx.context = as->asid;
     60        mmu_secondary_context_write(ctx.v);
     61}
     62
     63/** @}
    4764 */
    4865
Note: See TracChangeset for help on using the changeset viewer.