.. | .. |
---|
356 | 356 | /* |
---|
357 | 357 | * IRQ2 is cascade interrupt to second interrupt controller |
---|
358 | 358 | */ |
---|
359 | | -static struct irqaction sni_rm200_irq2 = { |
---|
360 | | - .handler = no_action, |
---|
361 | | - .name = "cascade", |
---|
362 | | - .flags = IRQF_NO_THREAD, |
---|
363 | | -}; |
---|
364 | 359 | |
---|
365 | 360 | static struct resource sni_rm200_pic1_resource = { |
---|
366 | 361 | .name = "onboard ISA pic1", |
---|
.. | .. |
---|
389 | 384 | return IRQ_HANDLED; |
---|
390 | 385 | } |
---|
391 | 386 | |
---|
392 | | -struct irqaction sni_rm200_i8259A_irq = { |
---|
393 | | - .handler = sni_rm200_i8259A_irq_handler, |
---|
394 | | - .name = "onboard ISA", |
---|
395 | | - .flags = IRQF_SHARED |
---|
396 | | -}; |
---|
397 | | - |
---|
398 | 387 | void __init sni_rm200_i8259_irqs(void) |
---|
399 | 388 | { |
---|
400 | 389 | int i; |
---|
401 | 390 | |
---|
402 | | - rm200_pic_master = ioremap_nocache(0x16000020, 4); |
---|
| 391 | + rm200_pic_master = ioremap(0x16000020, 4); |
---|
403 | 392 | if (!rm200_pic_master) |
---|
404 | 393 | return; |
---|
405 | | - rm200_pic_slave = ioremap_nocache(0x160000a0, 4); |
---|
| 394 | + rm200_pic_slave = ioremap(0x160000a0, 4); |
---|
406 | 395 | if (!rm200_pic_slave) { |
---|
407 | 396 | iounmap(rm200_pic_master); |
---|
408 | 397 | return; |
---|
.. | .. |
---|
417 | 406 | irq_set_chip_and_handler(i, &sni_rm200_i8259A_chip, |
---|
418 | 407 | handle_level_irq); |
---|
419 | 408 | |
---|
420 | | - setup_irq(RM200_I8259A_IRQ_BASE + PIC_CASCADE_IR, &sni_rm200_irq2); |
---|
| 409 | + if (request_irq(RM200_I8259A_IRQ_BASE + PIC_CASCADE_IR, no_action, |
---|
| 410 | + IRQF_NO_THREAD, "cascade", NULL)) |
---|
| 411 | + pr_err("Failed to register cascade interrupt\n"); |
---|
421 | 412 | } |
---|
422 | 413 | |
---|
423 | 414 | |
---|
.. | .. |
---|
481 | 472 | irq_set_chip_and_handler(i, &rm200_irq_type, handle_level_irq); |
---|
482 | 473 | sni_hwint = sni_rm200_hwint; |
---|
483 | 474 | change_c0_status(ST0_IM, IE_IRQ0); |
---|
484 | | - setup_irq(SNI_RM200_INT_START + 0, &sni_rm200_i8259A_irq); |
---|
485 | | - setup_irq(SNI_RM200_INT_START + 1, &sni_isa_irq); |
---|
| 475 | + if (request_irq(SNI_RM200_INT_START + 0, sni_rm200_i8259A_irq_handler, |
---|
| 476 | + 0, "onboard ISA", NULL)) |
---|
| 477 | + pr_err("Failed to register onboard ISA interrupt\n"); |
---|
| 478 | + if (request_irq(SNI_RM200_INT_START + 1, sni_isa_irq_handler, 0, "ISA", |
---|
| 479 | + NULL)) |
---|
| 480 | + pr_err("Failed to register ISA interrupt\n"); |
---|
486 | 481 | } |
---|
487 | 482 | |
---|
488 | 483 | void __init sni_rm200_init(void) |
---|