aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/sh/intc.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/drivers/sh/intc.c b/drivers/sh/intc.c
index d687a9b93d03..3dd231a643b5 100644
--- a/drivers/sh/intc.c
+++ b/drivers/sh/intc.c
@@ -20,7 +20,6 @@
20#include <linux/module.h> 20#include <linux/module.h>
21#include <linux/io.h> 21#include <linux/io.h>
22#include <linux/interrupt.h> 22#include <linux/interrupt.h>
23#include <linux/bootmem.h>
24#include <linux/sh_intc.h> 23#include <linux/sh_intc.h>
25#include <linux/sysdev.h> 24#include <linux/sysdev.h>
26#include <linux/list.h> 25#include <linux/list.h>
@@ -675,7 +674,7 @@ void __init register_intc_controller(struct intc_desc *desc)
675 unsigned int i, k, smp; 674 unsigned int i, k, smp;
676 struct intc_desc_int *d; 675 struct intc_desc_int *d;
677 676
678 d = alloc_bootmem(sizeof(*d)); 677 d = kzalloc(sizeof(*d), GFP_NOWAIT);
679 678
680 INIT_LIST_HEAD(&d->list); 679 INIT_LIST_HEAD(&d->list);
681 list_add(&d->list, &intc_list); 680 list_add(&d->list, &intc_list);
@@ -687,9 +686,9 @@ void __init register_intc_controller(struct intc_desc *desc)
687#if defined(CONFIG_CPU_SH3) || defined(CONFIG_CPU_SH4A) 686#if defined(CONFIG_CPU_SH3) || defined(CONFIG_CPU_SH4A)
688 d->nr_reg += desc->ack_regs ? desc->nr_ack_regs : 0; 687 d->nr_reg += desc->ack_regs ? desc->nr_ack_regs : 0;
689#endif 688#endif
690 d->reg = alloc_bootmem(d->nr_reg * sizeof(*d->reg)); 689 d->reg = kzalloc(d->nr_reg * sizeof(*d->reg), GFP_NOWAIT);
691#ifdef CONFIG_SMP 690#ifdef CONFIG_SMP
692 d->smp = alloc_bootmem(d->nr_reg * sizeof(*d->smp)); 691 d->smp = kzalloc(d->nr_reg * sizeof(*d->smp), GFP_NOWAIT);
693#endif 692#endif
694 k = 0; 693 k = 0;
695 694
@@ -702,7 +701,7 @@ void __init register_intc_controller(struct intc_desc *desc)
702 } 701 }
703 702
704 if (desc->prio_regs) { 703 if (desc->prio_regs) {
705 d->prio = alloc_bootmem(desc->nr_vectors * sizeof(*d->prio)); 704 d->prio = kzalloc(desc->nr_vectors * sizeof(*d->prio), GFP_NOWAIT);
706 705
707 for (i = 0; i < desc->nr_prio_regs; i++) { 706 for (i = 0; i < desc->nr_prio_regs; i++) {
708 smp = IS_SMP(desc->prio_regs[i]); 707 smp = IS_SMP(desc->prio_regs[i]);
@@ -712,7 +711,7 @@ void __init register_intc_controller(struct intc_desc *desc)
712 } 711 }
713 712
714 if (desc->sense_regs) { 713 if (desc->sense_regs) {
715 d->sense = alloc_bootmem(desc->nr_vectors * sizeof(*d->sense)); 714 d->sense = kzalloc(desc->nr_vectors * sizeof(*d->sense), GFP_NOWAIT);
716 715
717 for (i = 0; i < desc->nr_sense_regs; i++) { 716 for (i = 0; i < desc->nr_sense_regs; i++) {
718 k += save_reg(d, k, desc->sense_regs[i].reg, 0); 717 k += save_reg(d, k, desc->sense_regs[i].reg, 0);
@@ -757,7 +756,7 @@ void __init register_intc_controller(struct intc_desc *desc)
757 vect2->enum_id = 0; 756 vect2->enum_id = 0;
758 757
759 if (!intc_evt2irq_table) 758 if (!intc_evt2irq_table)
760 intc_evt2irq_table = alloc_bootmem(NR_IRQS); 759 intc_evt2irq_table = kzalloc(NR_IRQS, GFP_NOWAIT);
761 760
762 if (!intc_evt2irq_table) { 761 if (!intc_evt2irq_table) {
763 pr_warning("intc: cannot allocate evt2irq!\n"); 762 pr_warning("intc: cannot allocate evt2irq!\n");