Merge branch 'for-linus' of git://gitserver.sunplusct.com/linux-2.6-score

* 'for-linus' of git://gitserver.sunplusct.com/linux-2.6-score:
score: Use generic show_interrupts()
score: Convert to new irq function names
score: lost a semicolon in asm/irqflags.h
score: Select GENERIC_HARDIRQS_NO_DEPRECATED
score: Convert irq_chip to new functions

+11 -46
+2
arch/score/Kconfig
··· 3 3 config SCORE 4 4 def_bool y 5 5 select HAVE_GENERIC_HARDIRQS 6 + select GENERIC_HARDIRQS_NO_DEPRECATED 7 + select GENERIC_IRQ_SHOW 6 8 7 9 choice 8 10 prompt "System type"
+1 -1
arch/score/include/asm/irqflags.h
··· 29 29 30 30 static inline unsigned long arch_local_irq_save(void) 31 31 { 32 - unsigned long flags 32 + unsigned long flags; 33 33 34 34 asm volatile( 35 35 " mfcr r8, cr0 \n"
+8 -45
arch/score/kernel/irq.c
··· 52 52 irq_exit(); 53 53 } 54 54 55 - static void score_mask(unsigned int irq_nr) 55 + static void score_mask(struct irq_data *d) 56 56 { 57 - unsigned int irq_source = 63 - irq_nr; 57 + unsigned int irq_source = 63 - d->irq; 58 58 59 59 if (irq_source < 32) 60 60 __raw_writel((__raw_readl(SCORE_PIC + INT_MASKL) | \ ··· 64 64 (1 << (irq_source - 32))), SCORE_PIC + INT_MASKH); 65 65 } 66 66 67 - static void score_unmask(unsigned int irq_nr) 67 + static void score_unmask(struct irq_data *d) 68 68 { 69 - unsigned int irq_source = 63 - irq_nr; 69 + unsigned int irq_source = 63 - d->irq; 70 70 71 71 if (irq_source < 32) 72 72 __raw_writel((__raw_readl(SCORE_PIC + INT_MASKL) & \ ··· 78 78 79 79 struct irq_chip score_irq_chip = { 80 80 .name = "Score7-level", 81 - .mask = score_mask, 82 - .mask_ack = score_mask, 83 - .unmask = score_unmask, 81 + .irq_mask = score_mask, 82 + .irq_mask_ack = score_mask, 83 + .irq_unmask = score_unmask, 84 84 }; 85 85 86 86 /* ··· 92 92 unsigned long target_addr; 93 93 94 94 for (index = 0; index < NR_IRQS; ++index) 95 - set_irq_chip_and_handler(index, &score_irq_chip, 95 + irq_set_chip_and_handler(index, &score_irq_chip, 96 96 handle_level_irq); 97 97 98 98 for (target_addr = IRQ_VECTOR_BASE_ADDR; ··· 108 108 "mtcr %0, cr3\n\t" 109 109 : : "r" (EXCEPTION_VECTOR_BASE_ADDR | \ 110 110 VECTOR_ADDRESS_OFFSET_MODE16)); 111 - } 112 - 113 - /* 114 - * Generic, controller-independent functions: 115 - */ 116 - int show_interrupts(struct seq_file *p, void *v) 117 - { 118 - int i = *(loff_t *)v, cpu; 119 - struct irqaction *action; 120 - unsigned long flags; 121 - 122 - if (i == 0) { 123 - seq_puts(p, " "); 124 - for_each_online_cpu(cpu) 125 - seq_printf(p, "CPU%d ", cpu); 126 - seq_putc(p, '\n'); 127 - } 128 - 129 - if (i < NR_IRQS) { 130 - spin_lock_irqsave(&irq_desc[i].lock, flags); 131 - action = irq_desc[i].action; 132 - if (!action) 133 - goto unlock; 134 - 135 - seq_printf(p, "%3d: ", i); 136 - seq_printf(p, "%10u ", kstat_irqs(i)); 137 - seq_printf(p, " %8s", irq_desc[i].chip->name ? : "-"); 138 - seq_printf(p, " %s", action->name); 139 - for (action = action->next; action; action = action->next) 140 - seq_printf(p, ", %s", action->name); 141 - 142 - seq_putc(p, '\n'); 143 - unlock: 144 - spin_unlock_irqrestore(&irq_desc[i].lock, flags); 145 - } 146 - 147 - return 0; 148 111 }