The function set_irq_trigger_mode is used to set the interrupt trigger level and it should be machine specific. That means we need to remove this function from common/irq.c to irq.c of different loongson machines. Signed-off-by: yajin <yajin@xxxxxxxxxxxxx> --- arch/mips/loongson/common/irq.c | 3 --- arch/mips/loongson/fuloong-2e/irq.c | 3 +++ arch/mips/loongson/lemote-2f/irq.c | 3 +++ 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/arch/mips/loongson/common/irq.c b/arch/mips/loongson/common/irq.c index 20e7328..987feeb 100644 --- a/arch/mips/loongson/common/irq.c +++ b/arch/mips/loongson/common/irq.c @@ -56,9 +56,6 @@ void __init arch_init_irq(void) */ clear_c0_status(ST0_IM | ST0_BEV); - /* setting irq trigger mode */ - set_irq_trigger_mode(); - /* no steer */ LOONGSON_INTSTEER = 0; diff --git a/arch/mips/loongson/fuloong-2e/irq.c b/arch/mips/loongson/fuloong-2e/irq.c index 320e937..3881bd3 100644 --- a/arch/mips/loongson/fuloong-2e/irq.c +++ b/arch/mips/loongson/fuloong-2e/irq.c @@ -59,6 +59,9 @@ void __init mach_init_irq(void) * 32-63 ------> bonito irq */ + /* setting irq trigger mode */ + set_irq_trigger_mode(); + /* Sets the first-level interrupt dispatcher. */ mips_cpu_irq_init(); init_i8259_irqs(); diff --git a/arch/mips/loongson/lemote-2f/irq.c b/arch/mips/loongson/lemote-2f/irq.c index 1d8b4d2..f3eee56 100644 --- a/arch/mips/loongson/lemote-2f/irq.c +++ b/arch/mips/loongson/lemote-2f/irq.c @@ -122,6 +122,9 @@ void __init mach_init_irq(void) * 32-63 ------> bonito irq */ + /* setting irq trigger mode */ + set_irq_trigger_mode(); + /* Sets the first-level interrupt dispatcher. */ mips_cpu_irq_init(); init_i8259_irqs(); -- 1.5.6.5