patch-2.2.16 linux/arch/s390/kernel/time.c

Next file: linux/arch/s390/kernel/traps.c
Previous file: linux/arch/s390/kernel/sys_s390.c
Back to the patch index
Back to the overall index

diff -urN v2.2.15/linux/arch/s390/kernel/time.c linux/arch/s390/kernel/time.c
@@ -26,6 +26,8 @@
 
 #include <asm/uaccess.h>
 #include <asm/delay.h>
+#include <asm/irq.h>
+#include <asm/s390_ext.h>
 
 #include <linux/mc146818rtc.h>
 #include <linux/timex.h>
@@ -147,7 +149,7 @@
 extern __u16 boot_cpu_addr;
 #endif
 
-void do_timer_interrupt(struct pt_regs *regs,int error_code)
+void do_timer_interrupt(struct pt_regs *regs, __u16 error_code)
 {
         unsigned long flags;
 
@@ -240,6 +242,9 @@
                 printk("time_init: TOD clock stopped/non-operational\n");
                 break;
         }
+        /* request the 0x1004 external interrupt */
+        if (register_external_interrupt(0x1004, do_timer_interrupt) != 0)
+                panic("Couldn't request external interrupts 0x1004");
         init_100hz_timer();
         init_timer_cc = S390_lowcore.jiffy_timer_cc;
         init_timer_cc -= 0x8126d60e46000000LL -

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)