Changeset 031e264 in mainline


Ignore:
Timestamp:
2005-12-18T23:03:45Z (19 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
75e1db0
Parents:
ff12a3c
Message:

Fix cpu_init(): frame_alloc() can return 0 as the valid address of block of frames. Do not signal error.

sparc64 work.
Reorganize kernel vs. userspace memory layout.
Add panic_printf().
Turn dummy() into nop rather than into infinite loop.

Files:
1 added
7 edited

Legend:

Unmodified
Added
Removed
  • arch/sparc64/Makefile.inc

    rff12a3c r031e264  
    5050        arch/$(ARCH)/src/cpu/cpu.c \
    5151        arch/$(ARCH)/src/asm.S \
     52        arch/$(ARCH)/src/panic.S \
    5253        arch/$(ARCH)/src/console.c \
    5354        arch/$(ARCH)/src/context.S \
  • arch/sparc64/include/mm/page.h

    rff12a3c r031e264  
    3636#define PAGE_SIZE       FRAME_SIZE
    3737
    38 #define KA2PA(x)        (((__address) (x)) - 0x80000000)
    39 #define PA2KA(x)        (((__address) (x)) + 0x80000000)
     38#define KA2PA(x)        ((__address) (x))
     39#define PA2KA(x)        ((__address) (x))
    4040
    4141#define PTL0_INDEX_ARCH(vaddr)          0
  • arch/sparc64/include/mm/vm.h

    rff12a3c r031e264  
    3232#include <arch/types.h>
    3333
    34 #define KERNEL_ADDRESS_SPACE_START_ARCH         (__address) 0x8000000000000000
     34#define KERNEL_ADDRESS_SPACE_START_ARCH         (__address) 0x0000000000000000
    3535#define KERNEL_ADDRESS_SPACE_END_ARCH           (__address) 0xffffffffffffffff
    3636#define USER_ADDRESS_SPACE_START_ARCH           (__address) 0x0000000000000000
    37 #define USER_ADDRESS_SPACE_END_ARCH             (__address) 0x7fffffffffffffff
     37#define USER_ADDRESS_SPACE_END_ARCH             (__address) 0xffffffffffffffff
    3838
    39 #define UTEXT_ADDRESS_ARCH      0x0000000000001000
     39#define UTEXT_ADDRESS_ARCH      (0x0000000000000000+PAGE_SIZE)
    4040#define USTACK_ADDRESS_ARCH     (0x7fffffffffffffff-(PAGE_SIZE-1))
    41 #define UDATA_ADDRESS_ARCH      0x0000000001001000
     41#define UDATA_ADDRESS_ARCH      0x8000000000000000
    4242
    4343#define vm_install_arch(vm)
  • arch/sparc64/src/dummy.s

    rff12a3c r031e264  
    3030
    3131.global asm_delay_loop
    32 .global before_thread_runs_arch
    3332.global cpu_halt
    3433.global cpu_sleep
     
    4241.global fpu_enable
    4342.global fpu_init
    44 .global panic_printf
    4543.global userspace
    4644
     
    4846
    4947asm_delay_loop:
    50 before_thread_runs_arch:
    5148cpu_halt:
    5249cpu_sleep:
     
    6057fpu_enable:
    6158fpu_init:
    62 panic_printf:
    6359userspace:
    6460
     
    6662dummy:
    67630:
    68         b 0b
     64        retl
    6965        nop
  • arch/sparc64/src/mm/tlb.c

    rff12a3c r031e264  
    5858        fr.address = config.base;
    5959        pg.address = config.base;
    60        
     60
    6161        immu_disable();
    6262        dmmu_disable();
  • arch/sparc64/src/sparc64.c

    rff12a3c r031e264  
    5353{
    5454}
     55
     56void before_thread_runs_arch(void)
     57{
     58}
  • generic/src/cpu/cpu.c

    rff12a3c r031e264  
    6262                for (i=0; i < config.cpu_count; i++) {
    6363                        cpus[i].stack = (__u8 *) frame_alloc(FRAME_KA | FRAME_PANIC, ONE_FRAME);
    64                         if (!cpus[i].stack)
    65                                 panic("malloc/cpus[%d].stack\n", i);
    6664                       
    6765                        cpus[i].id = i;
Note: See TracChangeset for help on using the changeset viewer.