summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/i386/shared/irq/irq_init.c
diff options
context:
space:
mode:
authorPavel Pisa <pisa@cmp.felk.cvut.cz>2016-10-12 09:40:41 +0200
committerPavel Pisa <pisa@cmp.felk.cvut.cz>2016-10-17 09:41:58 +0200
commit6b54dcbbef6a003ae4c5fb9ae77f2f261f82dbf9 (patch)
tree944e6955408a0b4cfe093beabab1fb67a2d91efe /c/src/lib/libbsp/i386/shared/irq/irq_init.c
parentbsp/atsamv: Fix typo (diff)
downloadrtems-6b54dcbbef6a003ae4c5fb9ae77f2f261f82dbf9.tar.bz2
bsps/i386: replace global interrupt disable by SMP build supporting locking.
Diffstat (limited to '')
-rw-r--r--c/src/lib/libbsp/i386/shared/irq/irq_init.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/c/src/lib/libbsp/i386/shared/irq/irq_init.c b/c/src/lib/libbsp/i386/shared/irq/irq_init.c
index c401f29b71..fdf4801a5a 100644
--- a/c/src/lib/libbsp/i386/shared/irq/irq_init.c
+++ b/c/src/lib/libbsp/i386/shared/irq/irq_init.c
@@ -124,7 +124,12 @@ void rtems_irq_mngt_init(void)
while(1);
}
- rtems_interrupt_disable(level);
+ /*
+ * The interrupt management can be initialized only once
+ * during system bootup and that should happen on boot
+ * CPU so there is no need to synchronize with others CPUs.
+ */
+ rtems_interrupt_local_disable(level);
/*
* Init the complete IDT vector table with defaultRawIrq value