Changeset 1f12fab in mainline for kernel/arch/sparc32/include
- Timestamp:
- 2013-10-07T20:00:34Z (12 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- a73ebf0
- Parents:
- 80d9d83
- Location:
- kernel/arch/sparc32/include/arch
- Files:
- 
      - 1 added
- 5 edited
 
 
Legend:
- Unmodified
- Added
- Removed
- 
      kernel/arch/sparc32/include/arch/arch.hr80d9d83 r1f12fab 41 41 #include <typedefs.h> 42 42 43 #define NWINDOWS 8 44 43 45 /* ASI assignments: */ 44 46 #define ASI_CACHEMISS 0x01 … … 63 65 } bootinfo_t; 64 66 65 void arch_pre_main(bootinfo_t *bootinfo); 67 extern uintptr_t kernel_sp; 68 extern uintptr_t uspace_wbuf; 69 70 extern void arch_pre_main(void *unused, bootinfo_t *bootinfo); 66 71 67 72 #endif 
- 
      kernel/arch/sparc32/include/arch/elf.hr80d9d83 r1f12fab 27 27 */ 28 28 29 /** @addtogroup abs32le29 /** @addtogroup sparc32 30 30 * @{ 31 31 */ … … 33 33 */ 34 34 35 #ifndef KERN_ abs32le_ELF_H_36 #define KERN_ abs32le_ELF_H_35 #ifndef KERN_sparc32_ELF_H_ 36 #define KERN_sparc32_ELF_H_ 37 37 38 #define ELF_MACHINE EM_ NO39 #define ELF_DATA_ENCODING ELFDATA2 LSB38 #define ELF_MACHINE EM_SPARC 39 #define ELF_DATA_ENCODING ELFDATA2MSB 40 40 #define ELF_CLASS ELFCLASS32 41 41 
- 
      kernel/arch/sparc32/include/arch/istate.hr80d9d83 r1f12fab 27 27 */ 28 28 29 /** @addtogroup abs32leinterrupt29 /** @addtogroup sparc32interrupt 30 30 * @{ 31 31 */ … … 33 33 */ 34 34 35 #ifndef KERN_ abs32le_ISTATE_H_36 #define KERN_ abs32le_ISTATE_H_35 #ifndef KERN_sparc32_ISTATE_H_ 36 #define KERN_sparc32_ISTATE_H_ 37 37 38 38 #include <trace.h> … … 54 54 */ 55 55 typedef struct istate { 56 uintptr_t ip; 57 uintptr_t fp; 56 uintptr_t pstate; 57 uintptr_t pc; 58 uintptr_t npc; 58 59 uint32_t stack[]; 59 60 } istate_t; … … 64 65 /* On real hardware this checks whether the interrupted 65 66 context originated from user space. */ 66 67 return !(istate-> ip& UINT32_C(0x80000000));67 68 return !(istate->pc & UINT32_C(0x80000000)); 68 69 } 69 70 … … 74 75 /* On real hardware this sets the instruction pointer. */ 75 76 76 istate-> ip= retaddr;77 istate->pc = retaddr; 77 78 } 78 79 … … 82 83 /* On real hardware this returns the instruction pointer. */ 83 84 84 return istate-> ip;85 return istate->pc; 85 86 } 86 87 … … 90 91 /* On real hardware this returns the frame pointer. */ 91 92 92 return istate->fp;93 return 0;//istate->fp; 93 94 } 94 95 
- 
      kernel/arch/sparc32/include/arch/mm/tlb.hr80d9d83 r1f12fab 1 1 /* 2 * Copyright (c) 201 0 Martin Decky2 * Copyright (c) 2013 Jakub Klama 3 3 * All rights reserved. 4 4 * … … 27 27 */ 28 28 29 /** @addtogroup abs32lemm29 /** @addtogroup sparc32mm 30 30 * @{ 31 31 */ … … 33 33 */ 34 34 35 #ifndef KERN_abs32le_TLB_H_ 36 #define KERN_abs32le_TLB_H_ 35 #ifndef KERN_sparc32_TLB_H_ 36 #define KERN_sparc32_TLB_H_ 37 38 #define MMU_CONTROL 0x000 39 #define MMU_CONTEXT_TABLE 0x100 40 #define MMU_CONTEXT 0x200 41 #define MMU_FAULT_STATUS 0x300 42 #define MMU_FAULT_ADDRESS 0x400 37 43 38 44 #endif 
- 
      kernel/arch/sparc32/include/arch/proc/thread.hr80d9d83 r1f12fab 1 1 /* 2 * Copyright (c) 201 0 Martin Decky2 * Copyright (c) 2013 Jakub Klama 3 3 * All rights reserved. 4 4 * … … 27 27 */ 28 28 29 /** @addtogroup abs32leproc29 /** @addtogroup sparc32proc 30 30 * @{ 31 31 */ … … 33 33 */ 34 34 35 #ifndef KERN_ abs32le_THREAD_H_36 #define KERN_ abs32le_THREAD_H_35 #ifndef KERN_sparc32_THREAD_H_ 36 #define KERN_sparc32_THREAD_H_ 37 37 38 38 #include <typedefs.h> 39 39 40 40 typedef struct { 41 /** Buffer for register windows with userspace content. */ 42 uint8_t *uspace_window_buffer; 41 43 } thread_arch_t; 42 43 #define thr_constructor_arch(thr)44 #define thr_destructor_arch(thr)45 44 46 45 #endif 
  Note:
 See   TracChangeset
 for help on using the changeset viewer.
  
