This is the mail archive of the
ecos-discuss@sourceware.org
mailing list for the eCos project.
Interrupt vectors - idea of IRQ and interrupt name
- From: Nodir Qodirov <nodir dot qodirov at gmail dot com>
- To: ecos-discuss at ecos dot sourceware dot org
- Date: Mon, 24 Aug 2009 00:31:39 +0900
- Subject: [ECOS] Interrupt vectors - idea of IRQ and interrupt name
Hello everybody!
I am trying to understand eCos interrupt mechanism (maybe interrupt
mechanism itself in general). And now I have question may seem to be
too simple, which every Embedded System developer should know. But I
couldn't figure out:
1) Why do we have same values assigned to the eCos interrupts names
and IRQs? Are they somehow mapped to each other through same value
(32, 33, 34...).
2) Why value assigned starting from 32 (can't be it from "0")?
I have found in packages\hal\i386\pcmb\current\include\pcmb_intr.h file:
// Interrupt vectors.
#define CYGNUM_HAL_INTERRUPT_IRQ0 32
#define CYGNUM_HAL_INTERRUPT_IRQ1 33
#define CYGNUM_HAL_INTERRUPT_IRQ2 34
...
#define CYGNUM_HAL_INTERRUPT_IRQ15 47
#define CYGNUM_HAL_INTERRUPT_TIMER 32
#define CYGNUM_HAL_INTERRUPT_KEYBOARD 33
#define CYGNUM_HAL_INTERRUPT_SLAVE8259 34
...
#define CYGNUM_HAL_INTERRUPT_HDD 46
Comment on file says "This file contains info about interrupts and
peripherals that are common on all PCs; for example, the clock always
activates irq 0 and would therefore be listed here." But I couldn't
catch idea. Any resource to get more information to get better
understanding of eCos interrupt mechanism?
Thanking in advance,
Nodir.
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss