From 8624512aa908741ba2795200133eae0d7f4557ea Mon Sep 17 00:00:00 2001 From: Ralf Baechle Date: Thu, 2 Mar 2000 02:36:47 +0000 Subject: Merge with 2.3.48. --- arch/mips64/defconfig | 1 + arch/mips64/defconfig-ip22 | 1 + arch/mips64/defconfig-ip27 | 1 + arch/mips64/kernel/proc.c | 7 ++++++- arch/mips64/kernel/setup.c | 4 +++- arch/mips64/sgi-ip22/ip22-int.c | 20 +++++++++++++++++++- arch/mips64/sgi-ip27/ip27-irq.c | 22 ++++++++++++++++++++-- 7 files changed, 51 insertions(+), 5 deletions(-) (limited to 'arch/mips64') diff --git a/arch/mips64/defconfig b/arch/mips64/defconfig index 039ffd84f..c4f4ba27a 100644 --- a/arch/mips64/defconfig +++ b/arch/mips64/defconfig @@ -305,6 +305,7 @@ CONFIG_SERIAL_CONSOLE=y # CONFIG_WATCHDOG is not set # CONFIG_NVRAM is not set # CONFIG_RTC is not set +# CONFIG_EFI_RTC is not set # # Video For Linux diff --git a/arch/mips64/defconfig-ip22 b/arch/mips64/defconfig-ip22 index 9c6687735..b40469cfc 100644 --- a/arch/mips64/defconfig-ip22 +++ b/arch/mips64/defconfig-ip22 @@ -224,6 +224,7 @@ CONFIG_VT_CONSOLE=y # CONFIG_WATCHDOG is not set # CONFIG_NVRAM is not set # CONFIG_RTC is not set +# CONFIG_EFI_RTC is not set # # Video For Linux diff --git a/arch/mips64/defconfig-ip27 b/arch/mips64/defconfig-ip27 index 039ffd84f..c4f4ba27a 100644 --- a/arch/mips64/defconfig-ip27 +++ b/arch/mips64/defconfig-ip27 @@ -305,6 +305,7 @@ CONFIG_SERIAL_CONSOLE=y # CONFIG_WATCHDOG is not set # CONFIG_NVRAM is not set # CONFIG_RTC is not set +# CONFIG_EFI_RTC is not set # # Video For Linux diff --git a/arch/mips64/kernel/proc.c b/arch/mips64/kernel/proc.c index 6fba1b756..063ac5d88 100644 --- a/arch/mips64/kernel/proc.c +++ b/arch/mips64/kernel/proc.c @@ -1,4 +1,4 @@ -/* $Id: proc.c,v 1.1 1999/09/27 16:01:37 ralf Exp $ +/* $Id: proc.c,v 1.1 1999/09/28 22:25:51 ralf Exp $ * * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive @@ -69,3 +69,8 @@ int get_cpuinfo(char *buffer) return len; } + +void init_irq_proc(void) +{ + /* Nothing, for now. */ +} diff --git a/arch/mips64/kernel/setup.c b/arch/mips64/kernel/setup.c index b42271b47..2a7d8a894 100644 --- a/arch/mips64/kernel/setup.c +++ b/arch/mips64/kernel/setup.c @@ -1,4 +1,4 @@ -/* $Id: setup.c,v 1.6 2000/01/27 01:05:24 ralf Exp $ +/* $Id: setup.c,v 1.7 2000/02/04 07:40:24 ralf Exp $ * * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive @@ -183,4 +183,6 @@ void __init setup_arch(char **cmdline_p) *memory_start_p = initrd_end; } #endif + + paging_init(); } diff --git a/arch/mips64/sgi-ip22/ip22-int.c b/arch/mips64/sgi-ip22/ip22-int.c index 420e47fc7..a26ad631d 100644 --- a/arch/mips64/sgi-ip22/ip22-int.c +++ b/arch/mips64/sgi-ip22/ip22-int.c @@ -1,4 +1,4 @@ -/* $Id: ip22-int.c,v 1.3 1999/12/04 03:59:01 ralf Exp $ +/* $Id: ip22-int.c,v 1.4 2000/02/04 07:40:24 ralf Exp $ * * indy_int.c: Routines for generic manipulation of the INT[23] ASIC * found on INDY workstations.. @@ -37,6 +37,24 @@ #include #include +/* + * Linux has a controller-independent x86 interrupt architecture. + * every controller has a 'controller-template', that is used + * by the main code to do the right thing. Each driver-visible + * interrupt source is transparently wired to the apropriate + * controller. Thus drivers need not be aware of the + * interrupt-controller. + * + * Various interrupt controllers we handle: 8259 PIC, SMP IO-APIC, + * PIIX4's internal 8259 PIC and SGI's Visual Workstation Cobalt (IO-)APIC. + * (IO-APICs assumed to be messaging to Pentium local-APICs) + * + * the code is designed to be easily extended with new/different + * interrupt controllers, without having to do assembly magic. + */ + +irq_cpustat_t irq_stat [NR_CPUS]; + struct sgi_int2_regs *sgi_i2regs; struct sgi_int3_regs *sgi_i3regs; struct sgi_ioc_ints *ioc_icontrol; diff --git a/arch/mips64/sgi-ip27/ip27-irq.c b/arch/mips64/sgi-ip27/ip27-irq.c index 7f5a36f97..c9e6fe150 100644 --- a/arch/mips64/sgi-ip27/ip27-irq.c +++ b/arch/mips64/sgi-ip27/ip27-irq.c @@ -1,4 +1,4 @@ -/* $Id: ip27-irq.c,v 1.5 2000/02/04 07:40:24 ralf Exp $ +/* $Id: ip27-irq.c,v 1.6 2000/02/10 05:58:56 dagum Exp $ * * ip27-irq.c: Highlevel interrupt handling for IP27 architecture. * @@ -35,6 +35,24 @@ #include #include +/* + * Linux has a controller-independent x86 interrupt architecture. + * every controller has a 'controller-template', that is used + * by the main code to do the right thing. Each driver-visible + * interrupt source is transparently wired to the apropriate + * controller. Thus drivers need not be aware of the + * interrupt-controller. + * + * Various interrupt controllers we handle: 8259 PIC, SMP IO-APIC, + * PIIX4's internal 8259 PIC and SGI's Visual Workstation Cobalt (IO-)APIC. + * (IO-APICs assumed to be messaging to Pentium local-APICs) + * + * the code is designed to be easily extended with new/different + * interrupt controllers, without having to do assembly magic. + */ + +irq_cpustat_t irq_stat [NR_CPUS]; + extern asmlinkage void ip27_irq(void); int (*irq_cannonicalize)(int irq); @@ -255,7 +273,7 @@ void irq_debug(void) printk("PI_INT_MASK0_A = 0x%x\n", LOCAL_HUB_L(PI_INT_MASK0_A)); } -int setup_irq(int irq, struct irqaction *new) +int setup_irq(unsigned int irq, struct irqaction *new) { int shared = 0; struct irqaction *old, **p; -- cgit v1.2.3