patch-2.1.9 linux/arch/sparc/kernel/sun4c_irq.c

Next file: linux/arch/sparc/kernel/sun4m_irq.c
Previous file: linux/arch/sparc/kernel/sparc_ksyms.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.8/linux/arch/sparc/kernel/sun4c_irq.c linux/arch/sparc/kernel/sun4c_irq.c
@@ -46,7 +46,7 @@
 	unsigned long flags;
 	unsigned char current_mask, new_mask;
     
-	save_flags(flags); cli();
+	save_and_cli(flags);
 	irq_nr &= NR_IRQS;
 	current_mask = *interrupt_enable;
 	switch(irq_nr) {
@@ -75,7 +75,7 @@
 	unsigned long flags;
 	unsigned char current_mask, new_mask;
     
-	save_flags(flags); cli();
+	save_and_cli(flags);
 	irq_nr &= NR_IRQS;
 	current_mask = *interrupt_enable;
 	switch(irq_nr) {
@@ -110,7 +110,7 @@
 	clear_intr = sun4c_timers->timer_limit10;
 }
 
-static void sun4c_clear_profile_irq(void )
+static void sun4c_clear_profile_irq(void)
 {
 	/* Errm.. not sure how to do this.. */
 }
@@ -136,6 +136,8 @@
 	 * them until we have a real console driver so L1-A works.
 	 */
 	sun4c_timers->timer_limit10 = (((1000000/HZ) + 1) << 10);
+	master_l10_counter = &sun4c_timers->cur_count10;
+	master_l10_limit = &sun4c_timers->timer_limit10;
 
 	irq = request_irq(TIMER_IRQ,
 			  counter_fn,
@@ -149,9 +151,9 @@
 	claim_ticker14(NULL, PROFILE_IRQ, 0);
 }
 
-static void sun4c_nop(void)
-{
-}
+#ifdef __SMP__
+static void sun4c_nop(void) {}
+#endif
 
 void sun4c_init_IRQ(void)
 {
@@ -176,9 +178,9 @@
 	load_profile_irq = sun4c_load_profile_irq;
 	init_timers = sun4c_init_timers;
 #ifdef __SMP__
-	set_cpu_int = sun4c_nop;
-	clear_cpu_int = sun4c_nop;
-	set_irq_udt = sun4c_nop;
+	set_cpu_int = (void (*) (int, int))sun4c_nop;
+	clear_cpu_int = (void (*) (int, int))sun4c_nop;
+	set_irq_udt = (void (*) (int))sun4c_nop;
 #endif
 	*interrupt_enable = (SUN4C_INT_ENABLE);
 	sti();

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov