//kernel/trunk/arch/ppc32/include/interrupt.h |
---|
31,18 → 31,13 |
#include <arch/exception.h> |
#define IRQ_COUNT 64 |
#define IRQ_COUNT 1 |
#define IVT_ITEMS 15 |
#define INT_OFFSET 0 |
#define IVT_ITEMS (16 + IRQ_COUNT) |
#define INT_OFFSET 16 |
#define int_register(it, name, handler) exc_register(((it)+INT_OFFSET),name,handler) |
#define VECTOR_DECREMENTER 10 |
extern void start_decrementer(void); |
extern void interrupt_init(void); |
extern void extint_handler(int n, istate_t *istate); |
#endif |
//kernel/trunk/arch/ppc32/include/drivers/pic.h |
---|
File deleted |
//kernel/trunk/arch/ppc32/include/drivers/cuda.h |
---|
31,8 → 31,6 |
#include <arch/types.h> |
#define CUDA_IRQ 10 |
extern void cuda_init(void); |
extern void cuda_packet(const __u8 data); |
//kernel/trunk/arch/ppc32/src/ppc32.c |
---|
35,7 → 35,6 |
#include <userspace.h> |
#include <proc/uarg.h> |
#include <console/console.h> |
#include <arch/drivers/pic.h> |
bootinfo_t bootinfo; |
56,9 → 55,10 |
{ |
/* Initialize dispatch table */ |
interrupt_init(); |
/* Start decrementer */ |
start_decrementer(); |
cuda_init(); |
} |
void arch_post_mm_init(void) |
66,10 → 66,6 |
if (config.cpu_active == 1) { |
fb_init(bootinfo.screen.addr, bootinfo.screen.width, bootinfo.screen.height, bootinfo.screen.bpp, bootinfo.screen.scanline); |
/* Initialize PIC */ |
pic_init(); |
cuda_init(); |
/* Merge all zones to 1 big zone */ |
zone_merge_all(); |
} |
//kernel/trunk/arch/ppc32/src/exception.S |
---|
185,15 → 185,8 |
.org 0x500 |
.global exc_external |
exc_external: |
CONTEXT_STORE |
b exc_external |
lis r12, extint_handler@ha |
addi r12, r12, extint_handler@l |
mtsrr0 r12 |
li r3, 0 |
b jump_to_kernel |
.org 0x600 |
.global exc_alignment |
exc_alignment: |
//kernel/trunk/arch/ppc32/src/drivers/pic.c |
---|
File deleted |
//kernel/trunk/arch/ppc32/src/drivers/cuda.c |
---|
30,8 → 30,6 |
#include <arch/asm.h> |
#include <console/chardev.h> |
#include <console/console.h> |
#include <arch/drivers/pic.h> |
#include <interrupt.h> |
#define CUDA_PACKET 0x01 |
#define CUDA_POWERDOWN 0x0a |
49,16 → 47,9 |
static volatile __u8 *cuda = (__u8 *) 0xf2000000; |
#include <print.h> |
static void cuda_irq(int n, istate_t *istate) |
{ |
printf("Got cuda msg\n"); |
} |
void cuda_init(void) |
{ |
int_register(CUDA_IRQ, "cuda", cuda_irq); |
pic_enable_interrupt(CUDA_IRQ); |
} |
//kernel/trunk/arch/ppc32/src/interrupt.c |
---|
32,7 → 32,6 |
#include <arch.h> |
#include <time/clock.h> |
#include <ipc/sysipc.h> |
#include <arch/drivers/pic.h> |
void start_decrementer(void) |
65,15 → 64,3 |
panic("not implemented\n"); |
/* TODO */ |
} |
#include <print.h> |
/** Handler of externul interrupts */ |
void extint_handler(int n, istate_t *istate) |
{ |
int inum; |
while ((inum = pic_get_pending()) != -1) { |
exc_dispatch(inum+INT_OFFSET, istate); |
pic_ack_interrupt(inum); |
} |
} |
//kernel/trunk/arch/ppc32/Makefile.inc |
---|
78,5 → 78,4 |
arch/$(ARCH)/src/mm/frame.c \ |
arch/$(ARCH)/src/mm/memory_init.c \ |
arch/$(ARCH)/src/mm/page.c \ |
arch/$(ARCH)/src/mm/tlb.c \ |
arch/$(ARCH)/src/drivers/pic.c |
arch/$(ARCH)/src/mm/tlb.c |