From: Andy P. <at...@us...> - 2002-04-10 18:37:04
|
Update of /cvsroot/linux-vax/kernel-2.4/arch/ia64/hp In directory usw-pr-cvs1:/tmp/cvs-serv12040/ia64/hp Modified Files: hpsim_irq.c hpsim_setup.c Log Message: synch 2.4.15 commit 36 Index: hpsim_irq.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/ia64/hp/hpsim_irq.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- hpsim_irq.c 14 Jan 2001 19:48:59 -0000 1.1.1.1 +++ hpsim_irq.c 10 Apr 2002 14:27:20 -0000 1.2 @@ -1,8 +1,8 @@ /* * Platform dependent support for HP simulator. * - * Copyright (C) 1998-2000 Hewlett-Packard Co - * Copyright (C) 1998-2000 David Mosberger-Tang <da...@hp...> + * Copyright (C) 1998-2001 Hewlett-Packard Co + * Copyright (C) 1998-2001 David Mosberger-Tang <da...@hp...> */ #include <linux/init.h> @@ -35,10 +35,12 @@ void __init hpsim_irq_init (void) { + irq_desc_t *idesc; int i; - for (i = IA64_MIN_VECTORED_IRQ; i <= IA64_MAX_VECTORED_IRQ; ++i) { - if (irq_desc[i].handler == &no_irq_type) - irq_desc[i].handler = &irq_type_hp_sim; + for (i = 0; i < NR_IRQS; ++i) { + idesc = irq_desc(i); + if (idesc->handler == &no_irq_type) + idesc->handler = &irq_type_hp_sim; } } Index: hpsim_setup.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/ia64/hp/hpsim_setup.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- hpsim_setup.c 14 Jan 2001 19:49:00 -0000 1.1.1.1 +++ hpsim_setup.c 10 Apr 2002 14:27:20 -0000 1.2 @@ -27,28 +27,15 @@ /* * Simulator system call. */ -inline long -ia64_ssc (long arg0, long arg1, long arg2, long arg3, int nr) -{ -#ifdef __GCC_DOESNT_KNOW_IN_REGS__ - register long in0 asm ("r32") = arg0; - register long in1 asm ("r33") = arg1; - register long in2 asm ("r34") = arg2; - register long in3 asm ("r35") = arg3; -#else - register long in0 asm ("in0") = arg0; - register long in1 asm ("in1") = arg1; - register long in2 asm ("in2") = arg2; - register long in3 asm ("in3") = arg3; -#endif - register long r8 asm ("r8"); - register long r15 asm ("r15") = nr; - - asm volatile ("break 0x80001" - : "=r"(r8) - : "r"(r15), "r"(in0), "r"(in1), "r"(in2), "r"(in3)); - return r8; -} +asm (".text\n" + ".align 32\n" + ".global ia64_ssc\n" + ".proc ia64_ssc\n" + "ia64_ssc:\n" + "mov r15=r36\n" + "break 0x80001\n" + "br.ret.sptk.many rp\n" + ".endp\n"); void ia64_ssc_connect_irq (long intr, long irq) |