Changeset 49319ac in mainline


Ignore:
Timestamp:
2007-01-03T21:41:46Z (18 years ago)
Author:
Jakub Vana <jakub.vana@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
6dbe6844
Parents:
dfe9e2c
Message:

SIMICS added as a simulator kernel runs on

Files:
2 added
6 edited

Legend:

Unmodified
Added
Removed
  • HelenOS.config

    rdfe9e2c r49319ac  
    55@ "ia32" Intel IA-32 (PC)
    66@ "ia32xen" Intel IA-32 on Xen hypervisor
    7 @ "ia64" Intel IA-64 (Ski)
     7@ "ia64" Intel IA-64
    88@ "mips32msim" MIPS 32-bit (MSIM)
    99@ "mips32sim" MIPS 32-bit (Simics)
  • kernel/arch/ia64/Makefile.inc

    rdfe9e2c r49319ac  
    4343AFLAGS += -mconstant-gp
    4444
    45 DEFS += -D__64_BITS__ -DINIT0_ADDRESS=$(INIT0_ADDRESS) -DINIT0_SIZE=$(INIT0_SIZE)
     45DEFS += -D__64_BITS__ -DINIT0_ADDRESS=$(INIT0_ADDRESS) -DINIT0_SIZE=$(INIT0_SIZE) -D$(MACHINE)
     46
     47
    4648
    4749## Compile with page hash table support.
     
    7072        arch/$(ARCH)/src/fpu_context.c \
    7173        arch/$(ARCH)/src/context.S \
    72         arch/$(ARCH)/src/ski/ski.c \
    7374        arch/$(ARCH)/src/cpu/cpu.c \
    7475        arch/$(ARCH)/src/ivt.S \
     
    8283        arch/$(ARCH)/src/ddi/ddi.c \
    8384        arch/$(ARCH)/src/drivers/it.c
     85
     86ifeq ($(MACHINE),ski)
     87        ARCH_SOURCES += arch/$(ARCH)/src/ski/ski.c
     88        DEFS += -DSKI
     89endif
     90
     91ifeq ($(MACHINE),i460GX)
     92        ARCH_SOURCES += arch/$(ARCH)/src/simics/ega.c
     93        DEFS += -DI460GX
     94endif
     95
  • kernel/arch/ia64/include/interrupt.h

    rdfe9e2c r49319ac  
    5252
    5353/** External Interrupt vectors. */
    54 #define INTERRUPT_TIMER         0
     54#define INTERRUPT_TIMER         255
    5555#define INTERRUPT_SPURIOUS      15
    5656
  • kernel/arch/ia64/src/ia64.c

    rdfe9e2c r49319ac  
    5151#include <syscall/syscall.h>
    5252#include <ddi/irq.h>
     53#include <arch/simics/ega.h>
    5354
    5455void arch_pre_main(void)
     
    8283}
    8384
     85
     86
    8487void arch_post_mm_init(void)
    8588{
    8689        irq_init(INR_COUNT, INR_COUNT);
     90#ifdef SKI
    8791        ski_init_console();
     92#else   
     93        ega_init();
     94#endif 
    8895        it_init();     
    8996}
     
    99106void arch_post_smp_init(void)
    100107{
    101         thread_t *t;
    102108
    103109        if (config.cpu_active == 1) {
     
    105111                 * Create thread that polls keyboard.
    106112                 */
    107                 t = thread_create(kkbdpoll, NULL, TASK, 0, "kkbdpoll");
     113#ifdef SKI
     114                thread_t *t;
     115                t = thread_create(kkbdpoll, NULL, TASK, 0, "kkbdpoll", true);
    108116                if (!t)
    109117                        panic("cannot create kkbdpoll\n");
    110118                thread_ready(t);
     119#endif         
    111120        }
    112121}
     
    156165void arch_grab_console(void)
    157166{
     167#ifdef SKI
    158168        ski_kbd_grab();
     169#endif 
    159170}
    160171/** Return console to userspace
     
    163174void arch_release_console(void)
    164175{
     176#ifdef SKI
    165177        ski_kbd_release();
     178#endif
    166179}
    167180
  • kernel/generic/src/ipc/irq.c

    rdfe9e2c r49319ac  
    106106                        break;
    107107#endif
    108 #if defined(ia64)
     108#if defined(ia64) && defined(SKI)
    109109                case CMD_IA64_GETCHAR:
    110110                        dstval = _getc(&ski_uconsole);
  • kernel/kernel.config

    rdfe9e2c r49319ac  
    3636@ "indy" SGI Indy
    3737! [ARCH=mips32] MACHINE (choice)
     38
     39# Machine type
     40@ "ski" Ski ia64 simulator
     41@ "i460GX" i460GX chipset machine (include Simics)
     42! [ARCH=ia64] MACHINE (choice)
     43
    3844
    3945# Framebuffer support
Note: See TracChangeset for help on using the changeset viewer.